import {
    bS as e,
    r as t,
    b0 as l,
    aU as a,
    aL as o,
    c4 as n,
    d as r,
    aw as s,
    K as i,
    o as u,
    h as c,
    i as d,
    a as p,
    c as v,
    U as m,
    p as f,
    bx as h,
    R as g,
    k as b,
    aq as x,
    cD as y,
    s as w,
    v as C,
    ar as k,
    aJ as _,
    am as M,
    an as I,
    aH as T,
    at as S,
    aG as $,
    as as V,
    aP as P,
    j as B,
    ap as L,
    t as z,
    b8 as E,
    bO as A,
    ao as O,
    by as R,
    F as j,
    B as H,
    V as U,
    C as N,
    bW as F,
    bF as D,
    aX as q,
    aZ as W,
    aY as G,
    aR as J,
    aF as Z,
    g as K,
    w as Q,
    b6 as X,
    J as Y,
    b7 as ee,
    H as te,
    cE as le,
    au as ae,
    ay as oe,
    b1 as ne,
    cF as re,
    aO as se,
    P as ie,
    bU as ue,
    l as ce,
    cG as de,
    cH as pe,
    bV as ve,
    aQ as me,
    cw as fe,
    bG as he,
    cI as ge,
    cJ as be,
    x as xe,
    D as ye,
    ax as we,
    b as Ce,
    m as ke,
    cK as _e,
    E as Me,
    y as Ie,
    z as Te,
    bQ as Se,
    cL as $e,
    cM as Ve,
    f as Pe,
    cv as Be,
    cN as Le,
    cO as ze,
    u as Ee,
    e as Ae,
    S as Oe,
    b9 as Re,
    cP as je,
    cQ as He,
    cR as Ue,
    cS as Ne,
    T as Fe,
    cT as De,
    cU as qe,
    G as We
} from "./index.115af62d1729265196717.js";
import {
    j as Ge,
    k as Je,
    t as Ze,
    p as Ke,
    e as Qe,
    a as Xe,
    q as Ye,
    b as et,
    c as tt
} from "./index.eec34c841729265196717.js";
import {f as lt, g as at, h as ot, a as nt, _ as rt, E as st} from "./el-divider.111259cd1729265196717.js";
import {e as it, T as ut, E as ct} from "./el-button.c1876bd01729265196717.js";
import {
    T as dt,
    E as pt,
    b as vt,
    c as mt,
    a as ft,
    _ as ht
} from "./LocaleDropdown.vue_vue_type_script_setup_true_lang.80c51c531729265196717.js";
import {_ as gt} from "./_plugin-vue_export-helper.1b428a4d1729265196717.js";
import {a as bt, f as xt, c as yt, b as wt} from "./tree.67a6f3e21729265196717.js";
import {a as Ct} from "./index.76b9f3221729265196717.js";
import {u as kt} from "./useEmitt.cf35a3891729265196717.js";
import "./mitt.f0e547641729265196717.js";

const _t = {
    visibilityHeight: {type: Number, default: 200},
    target: {type: String, default: ""},
    right: {type: Number, default: 40},
    bottom: {type: Number, default: 40}
}, Mt = {click: e => e instanceof MouseEvent}, It = "ElBacktop", Tt = r({name: It});
const St = _(k(r({
        ...Tt, props: _t, emits: Mt, setup(r, {emit: k}) {
            const _ = r, M = s("backtop"), {handleClick: I, visible: T} = ((r, s, i) => {
                const u = e(), c = e(), d = t(!1), p = n((() => {
                    u.value && (d.value = u.value.scrollTop >= r.visibilityHeight)
                }), 300, !0);
                return l(c, "scroll", p), a((() => {
                    var e;
                    c.value = document, u.value = document.documentElement, r.target && (u.value = null != (e = document.querySelector(r.target)) ? e : void 0, u.value || o(i, `target does not exist: ${r.target}`), c.value = u.value)
                })), {
                    visible: d, handleClick: e => {
                        var t;
                        null == (t = u.value) || t.scrollTo({top: 0, behavior: "smooth"}), s("click", e)
                    }
                }
            })(_, k, It), S = i((() => ({right: `${_.right}px`, bottom: `${_.bottom}px`})));
            return (e, t) => (u(), c(C, {name: `${p(M).namespace.value}-fade-in`}, {
                default: d((() => [p(T) ? (u(), v("div", {
                    key: 0,
                    style: m(p(S)),
                    class: f(p(M).b()),
                    onClick: t[0] || (t[0] = h(((...e) => p(I) && p(I)(...e)), ["stop"]))
                }, [g(e.$slots, "default", {}, (() => [b(p(x), {class: f(p(M).e("icon"))}, {
                    default: d((() => [b(p(y))])),
                    _: 1
                }, 8, ["class"])]))], 6)) : w("v-if", !0)])), _: 3
            }, 8, ["name"]))
        }
    }), [["__file", "/home/runner/work/element-plus/element-plus/packages/components/backtop/src/backtop.vue"]])),
    $t = Symbol("breadcrumbKey"), Vt = M({separator: {type: String, default: "/"}, separatorIcon: {type: I}}),
    Pt = r({name: "ElBreadcrumb"});
var Bt = k(r({
    ...Pt, props: Vt, setup(e) {
        const l = e, o = s("breadcrumb"), n = t();
        return T($t, l), a((() => {
            const e = n.value.querySelectorAll(`.${o.e("item")}`);
            e.length && e[e.length - 1].setAttribute("aria-current", "page")
        })), (e, t) => (u(), v("div", {
            ref_key: "breadcrumb",
            ref: n,
            class: f(p(o).b()),
            "aria-label": "Breadcrumb",
            role: "navigation"
        }, [g(e.$slots, "default")], 2))
    }
}), [["__file", "/home/runner/work/element-plus/element-plus/packages/components/breadcrumb/src/breadcrumb.vue"]]);
const Lt = M({to: {type: S([String, Object]), default: ""}, replace: {type: Boolean, default: !1}}),
    zt = r({name: "ElBreadcrumbItem"});
var Et = k(r({
    ...zt, props: Lt, setup(e) {
        const l = e, a = $(), o = V($t, void 0), n = s("breadcrumb"), {separator: r, separatorIcon: i} = P(o),
            m = a.appContext.config.globalProperties.$router, h = t(), b = () => {
                l.to && m && (l.replace ? m.replace(l.to) : m.push(l.to))
            };
        return (e, t) => (u(), v("span", {class: f(p(n).e("item"))}, [B("span", {
            ref_key: "link",
            ref: h,
            class: f([p(n).e("inner"), p(n).is("link", !!e.to)]),
            role: "link",
            onClick: b
        }, [g(e.$slots, "default")], 2), p(i) ? (u(), c(p(x), {
            key: 0,
            class: f(p(n).e("separator"))
        }, {default: d((() => [(u(), c(L(p(i))))])), _: 1}, 8, ["class"])) : (u(), v("span", {
            key: 1,
            class: f(p(n).e("separator")),
            role: "presentation"
        }, z(p(r)), 3))], 2))
    }
}), [["__file", "/home/runner/work/element-plus/element-plus/packages/components/breadcrumb/src/breadcrumb-item.vue"]]);
const At = _(Bt, {BreadcrumbItem: Et}), Ot = E(Et), Rt = M({
    ...lt,
    direction: {type: String, default: "rtl", values: ["ltr", "rtl", "ttb", "btt"]},
    size: {type: [String, Number], default: "30%"},
    withHeader: {type: Boolean, default: !0},
    modalFade: {type: Boolean, default: !0}
}), jt = r({
    name: "ElDrawer",
    components: {ElOverlay: Ge, ElFocusTrap: Je, ElIcon: x, Close: A},
    inheritAttrs: !1,
    props: Rt,
    emits: at,
    setup(e, {slots: l}) {
        it({
            scope: "el-drawer",
            from: "the title slot",
            replacement: "the header slot",
            version: "3.0.0",
            ref: "https://element-plus.org/en-US/component/drawer.html#slots"
        }, i((() => !!l.title))), it({
            scope: "el-drawer",
            from: "custom-class",
            replacement: "class",
            version: "2.3.0",
            ref: "https://element-plus.org/en-US/component/drawer.html#attributes",
            type: "Attribute"
        }, i((() => !!e.customClass)));
        const a = t(), o = t(), n = s("drawer"), {t: r} = O(),
            u = i((() => "rtl" === e.direction || "ltr" === e.direction)), c = i((() => R(e.size)));
        return {...ot(e, a), drawerRef: a, focusStartRef: o, isHorizontal: u, drawerSize: c, ns: n, t: r}
    }
}), Ht = ["aria-label", "aria-labelledby", "aria-describedby"], Ut = ["id"], Nt = ["aria-label"], Ft = ["id"];
const Dt = _(k(jt, [["render", function (e, t, l, a, o, n) {
    const r = j("close"), s = j("el-icon"), i = j("el-focus-trap"), p = j("el-overlay");
    return u(), c(F, {to: "body", disabled: !e.appendToBody}, [b(C, {
        name: e.ns.b("fade"),
        onAfterEnter: e.afterEnter,
        onAfterLeave: e.afterLeave,
        onBeforeLeave: e.beforeLeave,
        persisted: ""
    }, {
        default: d((() => [H(b(p, {
            mask: e.modal,
            "overlay-class": e.modalClass,
            "z-index": e.zIndex,
            onClick: e.onModalClick
        }, {
            default: d((() => [b(i, {
                loop: "",
                trapped: e.visible,
                "focus-trap-el": e.drawerRef,
                "focus-start-el": e.focusStartRef,
                onReleaseRequested: e.onCloseRequested
            }, {
                default: d((() => [B("div", U({
                    ref: "drawerRef",
                    "aria-modal": "true",
                    "aria-label": e.title || void 0,
                    "aria-labelledby": e.title ? void 0 : e.titleId,
                    "aria-describedby": e.bodyId
                }, e.$attrs, {
                    class: [e.ns.b(), e.direction, e.visible && "open", e.customClass],
                    style: e.isHorizontal ? "width: " + e.drawerSize : "height: " + e.drawerSize,
                    role: "dialog",
                    onClick: t[1] || (t[1] = h((() => {
                    }), ["stop"]))
                }), [B("span", {
                    ref: "focusStartRef",
                    class: f(e.ns.e("sr-focus")),
                    tabindex: "-1"
                }, null, 2), e.withHeader ? (u(), v("header", {
                    key: 0,
                    class: f(e.ns.e("header"))
                }, [e.$slots.title ? g(e.$slots, "title", {key: 1}, (() => [w(" DEPRECATED SLOT ")])) : g(e.$slots, "header", {
                    key: 0,
                    close: e.handleClose,
                    titleId: e.titleId,
                    titleClass: e.ns.e("title")
                }, (() => [e.$slots.title ? w("v-if", !0) : (u(), v("span", {
                    key: 0,
                    id: e.titleId,
                    role: "heading",
                    class: f(e.ns.e("title"))
                }, z(e.title), 11, Ut))])), e.showClose ? (u(), v("button", {
                    key: 2,
                    "aria-label": e.t("el.drawer.close"),
                    class: f(e.ns.e("close-btn")),
                    type: "button",
                    onClick: t[0] || (t[0] = (...t) => e.handleClose && e.handleClose(...t))
                }, [b(s, {class: f(e.ns.e("close"))}, {
                    default: d((() => [b(r)])),
                    _: 1
                }, 8, ["class"])], 10, Nt)) : w("v-if", !0)], 2)) : w("v-if", !0), e.rendered ? (u(), v("div", {
                    key: 1,
                    id: e.bodyId,
                    class: f(e.ns.e("body"))
                }, [g(e.$slots, "default")], 10, Ft)) : w("v-if", !0), e.$slots.footer ? (u(), v("div", {
                    key: 2,
                    class: f(e.ns.e("footer"))
                }, [g(e.$slots, "footer")], 2)) : w("v-if", !0)], 16, Ht)])), _: 3
            }, 8, ["trapped", "focus-trap-el", "focus-start-el", "onReleaseRequested"])])), _: 3
        }, 8, ["mask", "overlay-class", "z-index", "onClick"]), [[N, e.visible]])])), _: 3
    }, 8, ["name", "onAfterEnter", "onAfterLeave", "onBeforeLeave"])], 8, ["disabled"])
}], ["__file", "/home/runner/work/element-plus/element-plus/packages/components/drawer/src/drawer.vue"]]));
var qt = k(r({
    name: "ElMenuCollapseTransition", setup() {
        const e = s("menu");
        return {
            listeners: {
                onBeforeEnter: e => e.style.opacity = "0.2", onEnter(t, l) {
                    q(t, `${e.namespace.value}-opacity-transition`), t.style.opacity = "1", l()
                }, onAfterEnter(t) {
                    W(t, `${e.namespace.value}-opacity-transition`), t.style.opacity = ""
                }, onBeforeLeave(t) {
                    t.dataset || (t.dataset = {}), G(t, e.m("collapse")) ? (W(t, e.m("collapse")), t.dataset.oldOverflow = t.style.overflow, t.dataset.scrollWidth = t.clientWidth.toString(), q(t, e.m("collapse"))) : (q(t, e.m("collapse")), t.dataset.oldOverflow = t.style.overflow, t.dataset.scrollWidth = t.clientWidth.toString(), W(t, e.m("collapse"))), t.style.width = `${t.scrollWidth}px`, t.style.overflow = "hidden"
                }, onLeave(e) {
                    q(e, "horizontal-collapse-transition"), e.style.width = `${e.dataset.scrollWidth}px`
                }
            }
        }
    }
}), [["render", function (e, t, l, a, o, n) {
    return u(), c(C, U({mode: "out-in"}, e.listeners), {default: d((() => [g(e.$slots, "default")])), _: 3}, 16)
}], ["__file", "/home/runner/work/element-plus/element-plus/packages/components/menu/src/menu-collapse-transition.vue"]]);

function Wt(e, t) {
    const l = i((() => {
        let l = e.parent;
        const a = [t.value];
        for (; "ElMenu" !== l.type.name;) l.props.index && a.unshift(l.props.index), l = l.parent;
        return a
    }));
    return {
        parentMenu: i((() => {
            let t = e.parent;
            for (; t && !["ElMenu", "ElSubMenu"].includes(t.type.name);) t = t.parent;
            return t
        })), indexPath: l
    }
}

function Gt(e) {
    return i((() => {
        const t = e.backgroundColor;
        return t ? new ut(t).shade(20).toString() : ""
    }))
}

const Jt = (e, t) => {
    const l = s("menu");
    return i((() => l.cssVarBlock({
        "text-color": e.textColor || "",
        "hover-text-color": e.textColor || "",
        "bg-color": e.backgroundColor || "",
        "hover-bg-color": Gt(e).value || "",
        "active-color": e.activeTextColor || "",
        level: `${t}`
    })))
}, Zt = M({
    index: {type: String, required: !0},
    showTimeout: {type: Number, default: 300},
    hideTimeout: {type: Number, default: 300},
    popperClass: String,
    disabled: Boolean,
    popperAppendToBody: {type: Boolean, default: void 0},
    teleported: {type: Boolean, default: void 0},
    popperOffset: {type: Number, default: 6},
    expandCloseIcon: {type: I},
    expandOpenIcon: {type: I},
    collapseCloseIcon: {type: I},
    collapseOpenIcon: {type: I}
}), Kt = "ElSubMenu";
var Qt = r({
    name: Kt, props: Zt, setup(e, {slots: l, expose: n}) {
        it({
            from: "popper-append-to-body",
            replacement: "teleported",
            scope: Kt,
            version: "2.3.0",
            ref: "https://element-plus.org/en-US/component/menu.html#submenu-attributes"
        }, i((() => void 0 !== e.popperAppendToBody)));
        const r = $(), {indexPath: u, parentMenu: c} = Wt(r, i((() => e.index))), d = s("menu"), p = s("sub-menu"),
            v = V("rootMenu");
        v || o(Kt, "can not inject root menu");
        const m = V(`subMenu:${c.value.uid}`);
        m || o(Kt, "can not inject sub menu");
        const f = t({}), h = t({});
        let g;
        const b = t(!1), y = t(), w = t(null),
            C = i((() => "horizontal" === A.value && _.value ? "bottom-start" : "right-start")),
            k = i((() => "horizontal" === A.value && _.value || "vertical" === A.value && !v.props.collapse ? e.expandCloseIcon && e.expandOpenIcon ? P.value ? e.expandOpenIcon : e.expandCloseIcon : J : e.collapseCloseIcon && e.collapseOpenIcon ? P.value ? e.collapseOpenIcon : e.collapseCloseIcon : Z)),
            _ = i((() => 0 === m.level)), M = i((() => {
                var t;
                const l = null != (t = e.teleported) ? t : e.popperAppendToBody;
                return void 0 === l ? _.value : l
            })), I = i((() => v.props.collapse ? `${d.namespace.value}-zoom-in-left` : `${d.namespace.value}-zoom-in-top`)),
            S = i((() => "horizontal" === A.value && _.value ? ["bottom-start", "bottom-end", "top-start", "top-end", "right-start", "left-start"] : ["right-start", "left-start", "bottom-start", "bottom-end", "top-start", "top-end"])),
            P = i((() => v.openedMenus.includes(e.index))), B = i((() => {
                let e = !1;
                return Object.values(f.value).forEach((t => {
                    t.active && (e = !0)
                })), Object.values(h.value).forEach((t => {
                    t.active && (e = !0)
                })), e
            })), L = i((() => v.props.backgroundColor || "")), z = i((() => v.props.activeTextColor || "")),
            E = i((() => v.props.textColor || "")), A = i((() => v.props.mode)),
            O = K({index: e.index, indexPath: u, active: B}),
            R = i((() => "horizontal" !== A.value ? {color: E.value} : {
                borderBottomColor: B.value ? v.props.activeTextColor ? z.value : "" : "transparent",
                color: B.value ? z.value : E.value
            })), j = e => {
                var t, l, a;
                e || null == (a = null == (l = null == (t = w.value) ? void 0 : t.popperRef) ? void 0 : l.popperInstanceRef) || a.destroy()
            }, U = () => {
                "hover" === v.props.menuTrigger && "horizontal" === v.props.mode || v.props.collapse && "vertical" === v.props.mode || e.disabled || v.handleSubMenuClick({
                    index: e.index,
                    indexPath: u.value,
                    active: B.value
                })
            }, F = (t, l = e.showTimeout) => {
                var a;
                "focus" !== t.type && ("click" === v.props.menuTrigger && "horizontal" === v.props.mode || !v.props.collapse && "vertical" === v.props.mode || e.disabled || (m.mouseInChild.value = !0, null == g || g(), ({stop: g} = le((() => {
                    v.openMenu(e.index, u.value)
                }), l)), M.value && (null == (a = c.value.vnode.el) || a.dispatchEvent(new MouseEvent("mouseenter")))))
            }, D = (t = !1) => {
                var l, a;
                "click" === v.props.menuTrigger && "horizontal" === v.props.mode || !v.props.collapse && "vertical" === v.props.mode || (null == g || g(), m.mouseInChild.value = !1, ({stop: g} = le((() => !b.value && v.closeMenu(e.index, u.value)), e.hideTimeout)), M.value && t && "ElSubMenu" === (null == (l = r.parent) ? void 0 : l.type.name) && (null == (a = m.handleMouseleave) || a.call(m, !0)))
            };
        Q((() => v.props.collapse), (e => j(Boolean(e))));
        {
            const e = e => {
                h.value[e.index] = e
            }, t = e => {
                delete h.value[e.index]
            };
            T(`subMenu:${r.uid}`, {
                addSubMenu: e,
                removeSubMenu: t,
                handleMouseleave: D,
                mouseInChild: b,
                level: m.level + 1
            })
        }
        return n({opened: P}), a((() => {
            v.addSubMenu(O), m.addSubMenu(O)
        })), X((() => {
            m.removeSubMenu(O), v.removeSubMenu(O)
        })), () => {
            var t;
            const a = [null == (t = l.title) ? void 0 : t.call(l), Y(x, {
                    class: p.e("icon-arrow"),
                    style: {transform: P.value ? e.expandCloseIcon && e.expandOpenIcon || e.collapseCloseIcon && e.collapseOpenIcon && v.props.collapse ? "none" : "rotateZ(180deg)" : "none"}
                }, {default: () => ee(k.value) ? Y(r.appContext.components[k.value]) : Y(k.value)})],
                o = Jt(v.props, m.level + 1), n = v.isMenuPopup ? Y(nt, {
                    ref: w,
                    visible: P.value,
                    effect: "light",
                    pure: !0,
                    offset: e.popperOffset,
                    showArrow: !1,
                    persistent: !0,
                    popperClass: e.popperClass,
                    placement: C.value,
                    teleported: M.value,
                    fallbackPlacements: S.value,
                    transition: I.value,
                    gpuAcceleration: !1
                }, {
                    content: () => {
                        var t;
                        return Y("div", {
                            class: [d.m(A.value), d.m("popup-container"), e.popperClass],
                            onMouseenter: e => F(e, 100),
                            onMouseleave: () => D(!0),
                            onFocus: e => F(e, 100)
                        }, [Y("ul", {
                            class: [d.b(), d.m("popup"), d.m(`popup-${C.value}`)],
                            style: o.value
                        }, [null == (t = l.default) ? void 0 : t.call(l)])])
                    },
                    default: () => Y("div", {
                        class: p.e("title"),
                        style: [R.value, {backgroundColor: L.value}],
                        onClick: U
                    }, a)
                }) : Y(te, {}, [Y("div", {
                    class: p.e("title"),
                    style: [R.value, {backgroundColor: L.value}],
                    ref: y,
                    onClick: U
                }, a), Y(rt, {}, {
                    default: () => {
                        var e;
                        return H(Y("ul", {
                            role: "menu",
                            class: [d.b(), d.m("inline")],
                            style: o.value
                        }, [null == (e = l.default) ? void 0 : e.call(l)]), [[N, P.value]])
                    }
                })]);
            return Y("li", {
                class: [p.b(), p.is("active", B.value), p.is("opened", P.value), p.is("disabled", e.disabled)],
                role: "menuitem",
                ariaHaspopup: !0,
                ariaExpanded: P.value,
                onMouseenter: F,
                onMouseleave: () => D(!0),
                onFocus: F
            }, [n])
        }
    }
});
const Xt = M({
    mode: {type: String, values: ["horizontal", "vertical"], default: "vertical"},
    defaultActive: {type: String, default: ""},
    defaultOpeneds: {type: S(Array), default: () => ae([])},
    uniqueOpened: Boolean,
    router: Boolean,
    menuTrigger: {type: String, values: ["hover", "click"], default: "hover"},
    collapse: Boolean,
    backgroundColor: String,
    textColor: String,
    activeTextColor: String,
    collapseTransition: {type: Boolean, default: !0},
    ellipsis: {type: Boolean, default: !0},
    popperEffect: {type: String, values: ["dark", "light"], default: "dark"}
}), Yt = e => Array.isArray(e) && e.every((e => ee(e)));
var el = r({
    name: "ElMenu",
    props: Xt,
    emits: {
        close: (e, t) => ee(e) && Yt(t),
        open: (e, t) => ee(e) && Yt(t),
        select: (e, t, l, a) => ee(e) && Yt(t) && se(l) && (void 0 === a || a instanceof Promise)
    },
    setup(e, {emit: l, slots: o, expose: n}) {
        const r = $(), u = r.appContext.config.globalProperties.$router, c = t(), d = s("menu"), p = s("sub-menu"),
            v = t(-1), m = t(e.defaultOpeneds && !e.collapse ? e.defaultOpeneds.slice(0) : []), f = t(e.defaultActive),
            h = t({}), g = t({}), b = i((() => "horizontal" === e.mode || "vertical" === e.mode && e.collapse)),
            y = (t, a) => {
                m.value.includes(t) || (e.uniqueOpened && (m.value = m.value.filter((e => a.includes(e)))), m.value.push(t), l("open", t, a))
            }, w = e => {
                const t = m.value.indexOf(e);
                -1 !== t && m.value.splice(t, 1)
            }, C = (e, t) => {
                w(e), l("close", e, t)
            }, k = ({index: e, indexPath: t}) => {
                m.value.includes(e) ? C(e, t) : y(e, t)
            }, _ = t => {
                ("horizontal" === e.mode || e.collapse) && (m.value = []);
                const {index: a, indexPath: o} = t;
                if (!Qe(a) && !Qe(o)) if (e.router && u) {
                    const e = t.route || a, n = u.push(e).then((e => (e || (f.value = a), e)));
                    l("select", a, o, {index: a, indexPath: o, route: e}, n)
                } else f.value = a, l("select", a, o, {index: a, indexPath: o})
            };
        let M = !0;
        const I = () => {
            const e = () => {
                v.value = -1, ie((() => {
                    v.value = (() => {
                        var e, t;
                        if (!c.value) return -1;
                        const l = Array.from(null != (t = null == (e = c.value) ? void 0 : e.childNodes) ? t : []).filter((e => "#text" !== e.nodeName || e.nodeValue)),
                            a = Number.parseInt(getComputedStyle(c.value).paddingLeft, 10),
                            o = Number.parseInt(getComputedStyle(c.value).paddingRight, 10),
                            n = c.value.clientWidth - a - o;
                        let r = 0, s = 0;
                        return l.forEach(((e, t) => {
                            r += e.offsetWidth || 0, r <= n - 64 && (s = t + 1)
                        })), s === l.length ? -1 : s
                    })()
                }))
            };
            M ? e() : ((e, t = 33.34) => {
                let l;
                return () => {
                    l && clearTimeout(l), l = setTimeout((() => {
                        e()
                    }), t)
                }
            })(e)(), M = !1
        };
        let S;
        Q((() => e.defaultActive), (t => {
            h.value[t] || (f.value = ""), (t => {
                const l = h.value, a = l[t] || f.value && l[f.value] || l[e.defaultActive];
                f.value = a ? a.index : t
            })(t)
        })), Q((() => e.collapse), (e => {
            e && (m.value = [])
        })), Q(h.value, (() => {
            const t = f.value && h.value[f.value];
            if (!t || "horizontal" === e.mode || e.collapse) return;
            t.indexPath.forEach((e => {
                const t = g.value[e];
                t && y(e, t.indexPath)
            }))
        })), oe((() => {
            "horizontal" === e.mode && e.ellipsis ? S = ne(c, I).stop : null == S || S()
        }));
        {
            const l = e => {
                g.value[e.index] = e
            }, a = e => {
                delete g.value[e.index]
            }, o = e => {
                h.value[e.index] = e
            }, n = e => {
                delete h.value[e.index]
            };
            T("rootMenu", K({
                props: e,
                openedMenus: m,
                items: h,
                subMenus: g,
                activeIndex: f,
                isMenuPopup: b,
                addMenuItem: o,
                removeMenuItem: n,
                addSubMenu: l,
                removeSubMenu: a,
                openMenu: y,
                closeMenu: C,
                handleMenuItemClick: _,
                handleSubMenuClick: k
            })), T(`subMenu:${r.uid}`, {addSubMenu: l, removeSubMenu: a, mouseInChild: t(!1), level: 0})
        }
        a((() => {
            "horizontal" === e.mode && new class {
                constructor(e, t) {
                    this.domNode = e, this.init(t)
                }

                init(e) {
                    const t = this.domNode.childNodes;
                    Array.from(t).forEach((t => {
                        1 === t.nodeType && new class {
                            constructor(e, t) {
                                this.domNode = e, this.submenu = null, this.submenu = null, this.init(t)
                            }

                            init(e) {
                                this.domNode.setAttribute("tabindex", "0");
                                const t = this.domNode.querySelector(`.${e}-menu`);
                                t && (this.submenu = new class {
                                    constructor(e, t) {
                                        this.parent = e, this.domNode = t, this.subIndex = 0, this.subIndex = 0, this.init()
                                    }

                                    init() {
                                        this.subMenuItems = this.domNode.querySelectorAll("li"), this.addListeners()
                                    }

                                    gotoSubIndex(e) {
                                        e === this.subMenuItems.length ? e = 0 : e < 0 && (e = this.subMenuItems.length - 1), this.subMenuItems[e].focus(), this.subIndex = e
                                    }

                                    addListeners() {
                                        const e = this.parent.domNode;
                                        Array.prototype.forEach.call(this.subMenuItems, (t => {
                                            t.addEventListener("keydown", (t => {
                                                let l = !1;
                                                switch (t.code) {
                                                    case D.down:
                                                        this.gotoSubIndex(this.subIndex + 1), l = !0;
                                                        break;
                                                    case D.up:
                                                        this.gotoSubIndex(this.subIndex - 1), l = !0;
                                                        break;
                                                    case D.tab:
                                                        Ze(e, "mouseleave");
                                                        break;
                                                    case D.enter:
                                                    case D.space:
                                                        l = !0, t.currentTarget.click()
                                                }
                                                return l && (t.preventDefault(), t.stopPropagation()), !1
                                            }))
                                        }))
                                    }
                                }(this, t)), this.addListeners()
                            }

                            addListeners() {
                                this.domNode.addEventListener("keydown", (e => {
                                    let t = !1;
                                    switch (e.code) {
                                        case D.down:
                                            Ze(e.currentTarget, "mouseenter"), this.submenu && this.submenu.gotoSubIndex(0), t = !0;
                                            break;
                                        case D.up:
                                            Ze(e.currentTarget, "mouseenter"), this.submenu && this.submenu.gotoSubIndex(this.submenu.subMenuItems.length - 1), t = !0;
                                            break;
                                        case D.tab:
                                            Ze(e.currentTarget, "mouseleave");
                                            break;
                                        case D.enter:
                                        case D.space:
                                            t = !0, e.currentTarget.click()
                                    }
                                    t && e.preventDefault()
                                }))
                            }
                        }(t, e)
                    }))
                }
            }(r.vnode.el, d.namespace.value)
        }));
        n({
            open: e => {
                const {indexPath: t} = g.value[e];
                t.forEach((e => y(e, t)))
            }, close: w, handleResize: I
        });
        return () => {
            var t, l;
            let a = null != (l = null == (t = o.default) ? void 0 : t.call(o)) ? l : [];
            const n = [];
            if ("horizontal" === e.mode && c.value) {
                const t = Ke(a), l = -1 === v.value ? t : t.slice(0, v.value),
                    o = -1 === v.value ? [] : t.slice(v.value);
                (null == o ? void 0 : o.length) && e.ellipsis && (a = l, n.push(Y(Qt, {
                    index: "sub-menu-more",
                    class: p.e("hide-arrow")
                }, {title: () => Y(x, {class: p.e("icon-more")}, {default: () => Y(re)}), default: () => o})))
            }
            const r = Jt(e, 0), s = Y("ul", {
                key: String(e.collapse),
                role: "menubar",
                ref: c,
                style: r.value,
                class: {[d.b()]: !0, [d.m(e.mode)]: !0, [d.m("collapse")]: e.collapse}
            }, [...a, ...n]);
            return e.collapseTransition && "vertical" === e.mode ? Y(qt, (() => s)) : s
        }
    }
});
const tl = M({index: {type: S([String, null]), default: null}, route: {type: S([String, Object])}, disabled: Boolean}),
    ll = "ElMenuItem";
var al = k(r({
    name: ll,
    components: {ElTooltip: nt},
    props: tl,
    emits: {click: e => ee(e.index) && Array.isArray(e.indexPath)},
    setup(e, {emit: t}) {
        const l = $(), n = V("rootMenu"), r = s("menu"), u = s("menu-item");
        n || o(ll, "can not inject root menu");
        const {parentMenu: c, indexPath: d} = Wt(l, ue(e, "index")), p = V(`subMenu:${c.value.uid}`);
        p || o(ll, "can not inject sub menu");
        const v = i((() => e.index === n.activeIndex)), m = K({index: e.index, indexPath: d, active: v});
        return a((() => {
            p.addSubMenu(m), n.addMenuItem(m)
        })), X((() => {
            p.removeSubMenu(m), n.removeMenuItem(m)
        })), {
            parentMenu: c, rootMenu: n, active: v, nsMenu: r, nsMenuItem: u, handleClick: () => {
                e.disabled || (n.handleMenuItemClick({
                    index: e.index,
                    indexPath: d.value,
                    route: e.route
                }), t("click", m))
            }
        }
    }
}), [["render", function (e, t, l, a, o, n) {
    const r = j("el-tooltip");
    return u(), v("li", {
        class: f([e.nsMenuItem.b(), e.nsMenuItem.is("active", e.active), e.nsMenuItem.is("disabled", e.disabled)]),
        role: "menuitem",
        tabindex: "-1",
        onClick: t[0] || (t[0] = (...t) => e.handleClick && e.handleClick(...t))
    }, ["ElMenu" === e.parentMenu.type.name && e.rootMenu.props.collapse && e.$slots.title ? (u(), c(r, {
        key: 0,
        effect: e.rootMenu.props.popperEffect,
        placement: "right",
        "fallback-placements": ["left"],
        persistent: ""
    }, {
        content: d((() => [g(e.$slots, "title")])),
        default: d((() => [B("div", {class: f(e.nsMenu.be("tooltip", "trigger"))}, [g(e.$slots, "default")], 2)])),
        _: 3
    }, 8, ["effect"])) : (u(), v(te, {key: 1}, [g(e.$slots, "default"), g(e.$slots, "title")], 64))], 2)
}], ["__file", "/home/runner/work/element-plus/element-plus/packages/components/menu/src/menu-item.vue"]]);
var ol = k(r({
    name: "ElMenuItemGroup",
    props: {title: String},
    setup: () => ({ns: s("menu-item-group")})
}), [["render", function (e, t, l, a, o, n) {
    return u(), v("li", {class: f(e.ns.b())}, [B("div", {class: f(e.ns.e("title"))}, [e.$slots.title ? g(e.$slots, "title", {key: 1}) : (u(), v(te, {key: 0}, [ce(z(e.title), 1)], 64))], 2), B("ul", null, [g(e.$slots, "default")])], 2)
}], ["__file", "/home/runner/work/element-plus/element-plus/packages/components/menu/src/menu-item-group.vue"]]);
const nl = _(el, {MenuItem: al, MenuItemGroup: ol, SubMenu: Qt}), rl = E(al);
E(ol);
const sl = E(Qt), il = ["success", "info", "warning", "error"], ul = M({
    customClass: {type: String, default: ""},
    dangerouslyUseHTMLString: {type: Boolean, default: !1},
    duration: {type: Number, default: 4500},
    icon: {type: I},
    id: {type: String, default: ""},
    message: {type: S([String, Object]), default: ""},
    offset: {type: Number, default: 0},
    onClick: {
        type: S(Function), default: () => {
        }
    },
    onClose: {type: S(Function), required: !0},
    position: {type: String, values: ["top-right", "top-left", "bottom-right", "bottom-left"], default: "top-right"},
    showClose: {type: Boolean, default: !0},
    title: {type: String, default: ""},
    type: {type: String, values: [...il, ""], default: ""},
    zIndex: {type: Number, default: 0}
}), cl = ["id"], dl = ["textContent"], pl = {key: 0}, vl = ["innerHTML"], ml = r({name: "ElNotification"});
var fl = k(r({
    ...ml, props: ul, emits: {destroy: () => !0}, setup(e, {expose: o}) {
        const n = e, {ns: r, zIndex: s} = de("notification"), {nextZIndex: y, currentZIndex: k} = s, {Close: _} = ve,
            M = t(!1);
        let I;
        const T = i((() => {
                const e = n.type;
                return e && pe[n.type] ? r.m(e) : ""
            })), S = i((() => n.type && pe[n.type] || n.icon)),
            $ = i((() => n.position.endsWith("right") ? "right" : "left")),
            V = i((() => n.position.startsWith("top") ? "top" : "bottom")),
            P = i((() => ({[V.value]: `${n.offset}px`, zIndex: k.value})));

        function E() {
            n.duration > 0 && ({stop: I} = le((() => {
                M.value && O()
            }), n.duration))
        }

        function A() {
            null == I || I()
        }

        function O() {
            M.value = !1
        }

        return a((() => {
            E(), y(), M.value = !0
        })), l(document, "keydown", (function ({code: e}) {
            e === D.delete || e === D.backspace ? A() : e === D.esc ? M.value && O() : E()
        })), o({visible: M, close: O}), (e, t) => (u(), c(C, {
            name: p(r).b("fade"),
            onBeforeLeave: e.onClose,
            onAfterLeave: t[1] || (t[1] = t => e.$emit("destroy")),
            persisted: ""
        }, {
            default: d((() => [H(B("div", {
                id: e.id,
                class: f([p(r).b(), e.customClass, p($)]),
                style: m(p(P)),
                role: "alert",
                onMouseenter: A,
                onMouseleave: E,
                onClick: t[0] || (t[0] = (...t) => e.onClick && e.onClick(...t))
            }, [p(S) ? (u(), c(p(x), {
                key: 0,
                class: f([p(r).e("icon"), p(T)])
            }, {
                default: d((() => [(u(), c(L(p(S))))])),
                _: 1
            }, 8, ["class"])) : w("v-if", !0), B("div", {class: f(p(r).e("group"))}, [B("h2", {
                class: f(p(r).e("title")),
                textContent: z(e.title)
            }, null, 10, dl), H(B("div", {
                class: f(p(r).e("content")),
                style: m(e.title ? void 0 : {margin: 0})
            }, [g(e.$slots, "default", {}, (() => [e.dangerouslyUseHTMLString ? (u(), v(te, {key: 1}, [w(" Caution here, message could've been compromised, never use user's input as message "), B("p", {innerHTML: e.message}, null, 8, vl)], 2112)) : (u(), v("p", pl, z(e.message), 1))]))], 6), [[N, e.message]]), e.showClose ? (u(), c(p(x), {
                key: 0,
                class: f(p(r).e("closeBtn")),
                onClick: h(O, ["stop"])
            }, {
                default: d((() => [b(p(_))])),
                _: 1
            }, 8, ["class", "onClick"])) : w("v-if", !0)], 2)], 46, cl), [[N, M.value]])])), _: 3
        }, 8, ["name", "onBeforeLeave"]))
    }
}), [["__file", "/home/runner/work/element-plus/element-plus/packages/components/notification/src/notification.vue"]]);
const hl = {"top-left": [], "top-right": [], "bottom-left": [], "bottom-right": []};
let gl = 1;
const bl = function (e = {}, t = null) {
    if (!me) return {
        close: () => {
        }
    };
    ("string" == typeof e || fe(e)) && (e = {message: e});
    const l = e.position || "top-right";
    let a = e.offset || 0;
    hl[l].forEach((({vm: e}) => {
        var t;
        a += ((null == (t = e.el) ? void 0 : t.offsetHeight) || 0) + 16
    })), a += 16;
    const o = "notification_" + gl++, n = e.onClose, r = {
        ...e, offset: a, id: o, onClose: () => {
            !function (e, t, l) {
                const a = hl[t], o = a.findIndex((({vm: t}) => {
                    var l;
                    return (null == (l = t.component) ? void 0 : l.props.id) === e
                }));
                if (-1 === o) return;
                const {vm: n} = a[o];
                if (!n) return;
                null == l || l(n);
                const r = n.el.offsetHeight, s = t.split("-")[0];
                a.splice(o, 1);
                const i = a.length;
                if (i < 1) return;
                for (let u = o; u < i; u++) {
                    const {el: e, component: t} = a[u].vm, l = Number.parseInt(e.style[s], 10) - r - 16;
                    t.props.offset = l
                }
            }(o, l, n)
        }
    };
    let s = document.body;
    he(e.appendTo) ? s = e.appendTo : ee(e.appendTo) && (s = document.querySelector(e.appendTo)), he(s) || (s = document.body);
    const i = document.createElement("div"), u = b(fl, r, fe(r.message) ? {default: () => r.message} : null);
    return u.appContext = null != t ? t : bl._context, u.props.onDestroy = () => {
        ge(null, i)
    }, ge(u, i), hl[l].push({vm: u}), s.appendChild(i.firstElementChild), {
        close: () => {
            u.component.exposed.visible.value = !1
        }
    }
};
il.forEach((e => {
    bl[e] = (t = {}) => (("string" == typeof t || fe(t)) && (t = {message: t}), bl({...t, type: e}))
})), bl.closeAll = function () {
    for (const e of Object.values(hl)) e.forEach((({vm: e}) => {
        e.component.exposed.visible.value = !1
    }))
}, bl._context = null;
const xl = be(bl, "$notify"), yl = r({
        __name: "Backtop", setup(e) {
            const {getPrefixCls: t, variables: l} = xe(), a = t("backtop");
            return (e, t) => (u(), c(p(St), {
                class: f(`${p(a)}-backtop`),
                target: `.${p(l).namespace}-layout-content-scrollbar .${p(l).elNamespace}-scrollbar__wrap`
            }, null, 8, ["class", "target"]))
        }
    }), wl = e => /^#([0-9a-fA-F]{3}|[0-9a-fA-f]{6})$/.test(e), Cl = (e, t) => {
        let l = e.toLowerCase();
        if (wl(e)) {
            if (4 === l.length) {
                let e = "#";
                for (let t = 1; t < 4; t += 1) e += l.slice(t, t + 1).concat(l.slice(t, t + 1));
                l = e
            }
            const e = [];
            for (let t = 1; t < 7; t += 2) e.push(parseInt("0x" + l.slice(t, t + 2)));
            return t ? "RGBA(" + e.join(",") + "," + t + ")" : "RGB(" + e.join(",") + ")"
        }
        return l
    }, kl = e => {
        if (!wl(e)) return;
        const [t, l, a] = Cl(e).replace(/(?:\(|\)|rgb|RGB)*/g, "").split(",").map((e => Number(e)));
        return .299 * t + .578 * l + .114 * a < 192
    },
    _l = (e, t) => (e = e.indexOf("#") >= 0 ? e.substring(1, e.length) : e, t = Math.trunc(255 * t / 100), `#${Ml(e.substring(0, 2), t)}${Ml(e.substring(2, 4), t)}${Ml(e.substring(4, 6), t)}`),
    Ml = (e, t) => {
        const l = parseInt(e, 16) + t, a = l > 255 ? 255 : l;
        return a.toString(16).length > 1 ? a.toString(16) : `0${a.toString(16)}`
    }, Il = ["onClick"], Tl = gt(r({
        __name: "ColorRadioPicker",
        props: {schema: {type: Array, default: () => []}, modelValue: ye.string.def("")},
        emits: ["update:modelValue", "change"],
        setup(e, {emit: l}) {
            const a = e, {getPrefixCls: o} = xe(), n = o("color-radio-picker"), r = t(a.modelValue);
            return Q((() => a.modelValue), (e => {
                e !== p(r) && (r.value = e)
            })), Q((() => r.value), (e => {
                l("update:modelValue", e), l("change", e)
            })), (t, l) => {
                const a = j("Icon");
                return u(), v("div", {class: f([p(n), "flex flex-wrap space-x-14px"])}, [(u(!0), v(te, null, we(e.schema, ((e, t) => (u(), v("span", {
                    key: `radio-${t}`,
                    class: f(["w-20px h-20px cursor-pointer rounded-2px border-solid border-gray-300 border-2px text-center leading-20px mb-5px", {"is-active": r.value === e}]),
                    style: m({background: e}),
                    onClick: t => r.value = e
                }, [r.value === e ? (u(), c(a, {
                    key: 0,
                    color: "#fff",
                    icon: "ep:check",
                    size: 16
                })) : w("", !0)], 14, Il)))), 128))], 2)
            }
        }
    }), [["__scopeId", "data-v-7faf7f27"]]), Sl = {class: "flex justify-between items-center"}, $l = {class: "text-14px"},
    Vl = {class: "flex justify-between items-center"}, Pl = {class: "text-14px"},
    Bl = {class: "flex justify-between items-center"}, Ll = {class: "text-14px"},
    zl = {class: "flex justify-between items-center"}, El = {class: "text-14px"},
    Al = {class: "flex justify-between items-center"}, Ol = {class: "text-14px"},
    Rl = {class: "flex justify-between items-center"}, jl = {class: "text-14px"},
    Hl = {class: "flex justify-between items-center"}, Ul = {class: "text-14px"},
    Nl = {class: "flex justify-between items-center"}, Fl = {class: "text-14px"},
    Dl = {class: "flex justify-between items-center"}, ql = {class: "text-14px"},
    Wl = {class: "flex justify-between items-center"}, Gl = {class: "text-14px"},
    Jl = {class: "flex justify-between items-center"}, Zl = {class: "text-14px"},
    Kl = {class: "flex justify-between items-center"}, Ql = {class: "text-14px"},
    Xl = {class: "flex justify-between items-center"}, Yl = {class: "text-14px"},
    ea = {class: "flex justify-between items-center"}, ta = {class: "text-14px"},
    la = {class: "flex justify-between items-center"}, aa = {class: "text-14px"}, oa = r({
        __name: "InterfaceDisplay", setup(e) {
            const {getPrefixCls: l} = xe(), a = l("interface-display"), o = Ce(), {t: n} = ke(), r = t(o.getBreadcrumb),
                s = e => {
                    o.setBreadcrumb(e)
                }, c = t(o.getBreadcrumbIcon), d = e => {
                    o.setBreadcrumbIcon(e)
                }, m = t(o.getHamburger), h = e => {
                    o.setHamburger(e)
                }, g = t(o.getScreenfull), x = e => {
                    o.setScreenfull(e)
                }, y = t(o.getSize), w = e => {
                    o.setSize(e)
                }, C = t(o.getLocale), k = e => {
                    o.setLocale(e)
                }, _ = t(o.getTagsView), M = e => {
                    _e("--tags-view-height", e ? "35px" : "0px"), o.setTagsView(e)
                }, I = t(o.getTagsViewIcon), T = e => {
                    o.setTagsViewIcon(e)
                }, S = t(o.getLogo), $ = e => {
                    o.setLogo(e)
                }, V = t(o.getUniqueOpened), P = e => {
                    o.setUniqueOpened(e)
                }, L = t(o.getFixedHeader), E = e => {
                    o.setFixedHeader(e)
                }, A = t(o.getFooter), O = e => {
                    o.setFooter(e)
                }, R = t(o.getGreyMode), j = e => {
                    o.setGreyMode(e)
                }, H = t(o.getDynamicRouter), U = e => {
                    Me.info(n("setting.reExperienced")), o.setDynamicRouter(e)
                }, N = t(o.getFixedMenu), F = e => {
                    o.setFixedMenu(e)
                }, D = i((() => o.getLayout));
            return Q((() => D.value), (e => {
                "top" === e && o.setCollapse(!1)
            })), (e, t) => (u(), v("div", {class: f(p(a))}, [B("div", Sl, [B("span", $l, z(p(n)("setting.breadcrumb")), 1), b(p(Xe), {
                modelValue: r.value,
                "onUpdate:modelValue": t[0] || (t[0] = e => r.value = e),
                onChange: s
            }, null, 8, ["modelValue"])]), B("div", Vl, [B("span", Pl, z(p(n)("setting.breadcrumbIcon")), 1), b(p(Xe), {
                modelValue: c.value,
                "onUpdate:modelValue": t[1] || (t[1] = e => c.value = e),
                onChange: d
            }, null, 8, ["modelValue"])]), B("div", Bl, [B("span", Ll, z(p(n)("setting.hamburgerIcon")), 1), b(p(Xe), {
                modelValue: m.value,
                "onUpdate:modelValue": t[2] || (t[2] = e => m.value = e),
                onChange: h
            }, null, 8, ["modelValue"])]), B("div", zl, [B("span", El, z(p(n)("setting.screenfullIcon")), 1), b(p(Xe), {
                modelValue: g.value,
                "onUpdate:modelValue": t[3] || (t[3] = e => g.value = e),
                onChange: x
            }, null, 8, ["modelValue"])]), B("div", Al, [B("span", Ol, z(p(n)("setting.sizeIcon")), 1), b(p(Xe), {
                modelValue: y.value,
                "onUpdate:modelValue": t[4] || (t[4] = e => y.value = e),
                onChange: w
            }, null, 8, ["modelValue"])]), B("div", Rl, [B("span", jl, z(p(n)("setting.localeIcon")), 1), b(p(Xe), {
                modelValue: C.value,
                "onUpdate:modelValue": t[5] || (t[5] = e => C.value = e),
                onChange: k
            }, null, 8, ["modelValue"])]), B("div", Hl, [B("span", Ul, z(p(n)("setting.tagsView")), 1), b(p(Xe), {
                modelValue: _.value,
                "onUpdate:modelValue": t[6] || (t[6] = e => _.value = e),
                onChange: M
            }, null, 8, ["modelValue"])]), B("div", Nl, [B("span", Fl, z(p(n)("setting.tagsViewIcon")), 1), b(p(Xe), {
                modelValue: I.value,
                "onUpdate:modelValue": t[7] || (t[7] = e => I.value = e),
                onChange: T
            }, null, 8, ["modelValue"])]), B("div", Dl, [B("span", ql, z(p(n)("setting.logo")), 1), b(p(Xe), {
                modelValue: S.value,
                "onUpdate:modelValue": t[8] || (t[8] = e => S.value = e),
                onChange: $
            }, null, 8, ["modelValue"])]), B("div", Wl, [B("span", Gl, z(p(n)("setting.uniqueOpened")), 1), b(p(Xe), {
                modelValue: V.value,
                "onUpdate:modelValue": t[9] || (t[9] = e => V.value = e),
                onChange: P
            }, null, 8, ["modelValue"])]), B("div", Jl, [B("span", Zl, z(p(n)("setting.fixedHeader")), 1), b(p(Xe), {
                modelValue: L.value,
                "onUpdate:modelValue": t[10] || (t[10] = e => L.value = e),
                onChange: E
            }, null, 8, ["modelValue"])]), B("div", Kl, [B("span", Ql, z(p(n)("setting.footer")), 1), b(p(Xe), {
                modelValue: A.value,
                "onUpdate:modelValue": t[11] || (t[11] = e => A.value = e),
                onChange: O
            }, null, 8, ["modelValue"])]), B("div", Xl, [B("span", Yl, z(p(n)("setting.greyMode")), 1), b(p(Xe), {
                modelValue: R.value,
                "onUpdate:modelValue": t[12] || (t[12] = e => R.value = e),
                onChange: j
            }, null, 8, ["modelValue"])]), B("div", ea, [B("span", ta, z(p(n)("setting.dynamicRouter")), 1), b(p(Xe), {
                modelValue: H.value,
                "onUpdate:modelValue": t[13] || (t[13] = e => H.value = e),
                onChange: U
            }, null, 8, ["modelValue"])]), B("div", la, [B("span", aa, z(p(n)("setting.fixedMenu")), 1), b(p(Xe), {
                modelValue: N.value,
                "onUpdate:modelValue": t[14] || (t[14] = e => N.value = e),
                onChange: F
            }, null, 8, ["modelValue"])])], 2))
        }
    }),
    na = [(e => (Ie("data-v-3afc02d5"), e = e(), Te(), e))((() => B("div", {class: "absolute h-full w-[33%] top-0 left-[10%] bg-gray-200"}, null, -1)))],
    ra = gt(r({
        __name: "LayoutRadioPicker", setup(e) {
            const {getPrefixCls: t} = xe(), l = t("layout-radio-picker"), a = Ce(), o = i((() => a.getLayout));
            return (e, t) => (u(), v("div", {class: f([p(l), "flex flex-wrap space-x-14px"])}, [B("div", {
                class: f([`${p(l)}__classic`, "relative w-56px h-48px cursor-pointer bg-gray-300", {"is-acitve": "classic" === p(o)}]),
                onClick: t[0] || (t[0] = e => p(a).setLayout("classic"))
            }, null, 2), B("div", {
                class: f([`${p(l)}__top-left`, "relative w-56px h-48px cursor-pointer bg-gray-300", {"is-acitve": "topLeft" === p(o)}]),
                onClick: t[1] || (t[1] = e => p(a).setLayout("topLeft"))
            }, null, 2), B("div", {
                class: f([`${p(l)}__top`, "relative w-56px h-48px cursor-pointer bg-gray-300", {"is-acitve": "top" === p(o)}]),
                onClick: t[2] || (t[2] = e => p(a).setLayout("top"))
            }, null, 2), B("div", {
                class: f([`${p(l)}__cut-menu`, "relative w-56px h-48px cursor-pointer bg-gray-300", {"is-acitve": "cutMenu" === p(o)}]),
                onClick: t[3] || (t[3] = e => p(a).setLayout("cutMenu"))
            }, na, 2)], 2))
        }
    }), [["__scopeId", "data-v-3afc02d5"]]), sa = {class: "text-16px font-700"}, ia = {class: "text-center"},
    ua = {class: "mt-5px"}, ca = gt(r({
        __name: "Setting", setup(e) {
            const {getPrefixCls: l} = xe(), a = l("setting"), o = Ce(), {t: n} = ke(), r = i((() => o.getLayout)),
                s = t(!1), c = t(o.getTheme.elColorPrimary), m = e => {
                    _e("--el-color-primary", e), o.setTheme({elColorPrimary: e});
                    const t = Se("--left-menu-bg-color", document.documentElement);
                    y($e(p(t)))
                }, h = t(o.getTheme.topHeaderBgColor || ""), g = e => {
                    const t = kl(e), l = t ? "#fff" : "inherit", a = t ? _l(e, 6) : "#f6f6f6", n = t ? e : "#eee";
                    _e("--top-header-bg-color", e), _e("--top-header-text-color", l), _e("--top-header-hover-color", a), _e("--top-tool-border-color", n), o.setTheme({
                        topHeaderBgColor: e,
                        topHeaderTextColor: l,
                        topHeaderHoverColor: a,
                        topToolBorderColor: n
                    }), "top" === p(r) && y(e)
                }, x = t(o.getTheme.leftMenuBgColor || ""), y = e => {
                    const t = Se("--el-color-primary", document.documentElement), l = kl(e), a = {
                        leftMenuBorderColor: l ? "inherit" : "#eee",
                        leftMenuBgColor: e,
                        leftMenuBgLightColor: l ? _l(e, 6) : e,
                        leftMenuBgActiveColor: l ? "var(--el-color-primary)" : Cl(p(t), .1),
                        leftMenuCollapseBgActiveColor: l ? "var(--el-color-primary)" : Cl(p(t), .1),
                        leftMenuTextColor: l ? "#bfcbd9" : "#333",
                        leftMenuTextActiveColor: l ? "#fff" : "var(--el-color-primary)",
                        logoTitleTextColor: l ? "#fff" : "inherit",
                        logoBorderColor: l ? e : "#eee"
                    };
                    o.setTheme(a), o.setCssVarTheme()
                };
            "top" !== r.value || o.getIsDark || (h.value = "#fff", g("#fff")), Q((() => r.value), (e => {
                "top" !== e || o.getIsDark ? y(p(x)) : (h.value = "#fff", g("#fff"))
            }));
            const C = async () => {
                const {copy: e, copied: t, isSupported: l} = Ve({
                    source: `\n      // 面包屑\n      breadcrumb: ${o.getBreadcrumb},\n      // 面包屑图标\n      breadcrumbIcon: ${o.getBreadcrumbIcon},\n      // 折叠图标\n      hamburger: ${o.getHamburger},\n      // 全屏图标\n      screenfull: ${o.getScreenfull},\n      // 尺寸图标\n      size: ${o.getSize},\n      // 多语言图标\n      locale: ${o.getLocale},\n      // 标签页\n      tagsView: ${o.getTagsView},\n      // 标签页图标\n      getTagsViewIcon: ${o.getTagsViewIcon},\n      // logo\n      logo: ${o.getLogo},\n      // 菜单手风琴\n      uniqueOpened: ${o.getUniqueOpened},\n      // 固定header\n      fixedHeader: ${o.getFixedHeader},\n      // 页脚\n      footer: ${o.getFooter},\n      // 灰色模式\n      greyMode: ${o.getGreyMode},\n      // layout布局\n      layout: '${o.getLayout}',\n      // 暗黑模式\n      isDark: ${o.getIsDark},\n      // 组件尺寸\n      currentSize: '${o.getCurrentSize}',\n      // 主题相关\n      theme: {\n        // 主题色\n        elColorPrimary: '${o.getTheme.elColorPrimary}',\n        // 左侧菜单边框颜色\n        leftMenuBorderColor: '${o.getTheme.leftMenuBorderColor}',\n        // 左侧菜单背景颜色\n        leftMenuBgColor: '${o.getTheme.leftMenuBgColor}',\n        // 左侧菜单浅色背景颜色\n        leftMenuBgLightColor: '${o.getTheme.leftMenuBgLightColor}',\n        // 左侧菜单选中背景颜色\n        leftMenuBgActiveColor: '${o.getTheme.leftMenuBgActiveColor}',\n        // 左侧菜单收起选中背景颜色\n        leftMenuCollapseBgActiveColor: '${o.getTheme.leftMenuCollapseBgActiveColor}',\n        // 左侧菜单字体颜色\n        leftMenuTextColor: '${o.getTheme.leftMenuTextColor}',\n        // 左侧菜单选中字体颜色\n        leftMenuTextActiveColor: '${o.getTheme.leftMenuTextActiveColor}',\n        // logo字体颜色\n        logoTitleTextColor: '${o.getTheme.logoTitleTextColor}',\n        // logo边框颜色\n        logoBorderColor: '${o.getTheme.logoBorderColor}',\n        // 头部背景颜色\n        topHeaderBgColor: '${o.getTheme.topHeaderBgColor}',\n        // 头部字体颜色\n        topHeaderTextColor: '${o.getTheme.topHeaderTextColor}',\n        // 头部悬停颜色\n        topHeaderHoverColor: '${o.getTheme.topHeaderHoverColor}',\n        // 头部边框颜色\n        topToolBorderColor: '${o.getTheme.topToolBorderColor}'\n      }\n    `
                });
                l ? (await e(), p(t) && Me.success(n("setting.copySuccess"))) : Me.error(n("setting.copyFailed"))
            }, k = () => {
                const {wsCache: e} = Pe();
                e.delete("layout"), e.delete("theme"), e.delete("isDark"), window.location.reload()
            };
            return (e, t) => {
                const l = j("Icon");
                return u(), v(te, null, [B("div", {
                    class: f([p(a), "fixed top-[45%] right-0 w-40px h-40px text-center leading-40px bg-[var(--el-color-primary)] cursor-pointer"]),
                    onClick: t[0] || (t[0] = e => s.value = !0)
                }, [b(l, {icon: "ant-design:setting-outlined", color: "#fff"})], 2), b(p(Dt), {
                    modelValue: s.value,
                    "onUpdate:modelValue": t[4] || (t[4] = e => s.value = e),
                    direction: "rtl",
                    size: "350px",
                    "z-index": 4e3
                }, {
                    header: d((() => [B("span", sa, z(p(n)("setting.projectSetting")), 1)])),
                    default: d((() => [B("div", ia, [b(p(st), null, {
                        default: d((() => [ce(z(p(n)("setting.theme")), 1)])),
                        _: 1
                    }), b(p(dt)), b(p(st), null, {
                        default: d((() => [ce(z(p(n)("setting.layout")), 1)])),
                        _: 1
                    }), b(ra), b(p(st), null, {
                        default: d((() => [ce(z(p(n)("setting.systemTheme")), 1)])),
                        _: 1
                    }), b(Tl, {
                        modelValue: c.value,
                        "onUpdate:modelValue": t[1] || (t[1] = e => c.value = e),
                        schema: ["#409eff", "#009688", "#536dfe", "#ff5c93", "#ee4f12", "#0096c7", "#9c27b0", "#ff9800"],
                        onChange: m
                    }, null, 8, ["modelValue"]), b(p(st), null, {
                        default: d((() => [ce(z(p(n)("setting.headerTheme")), 1)])),
                        _: 1
                    }), b(Tl, {
                        modelValue: h.value,
                        "onUpdate:modelValue": t[2] || (t[2] = e => h.value = e),
                        schema: ["#fff", "#151515", "#5172dc", "#e74c3c", "#24292e", "#394664", "#009688", "#383f45"],
                        onChange: g
                    }, null, 8, ["modelValue"]), "top" !== p(r) ? (u(), v(te, {key: 0}, [b(p(st), null, {
                        default: d((() => [ce(z(p(n)("setting.menuTheme")), 1)])),
                        _: 1
                    }), b(Tl, {
                        modelValue: x.value,
                        "onUpdate:modelValue": t[3] || (t[3] = e => x.value = e),
                        schema: ["#fff", "#001529", "#212121", "#273352", "#191b24", "#383f45", "#001628", "#344058"],
                        onChange: y
                    }, null, 8, ["modelValue"])], 64)) : w("", !0)]), b(p(st), null, {
                        default: d((() => [ce(z(p(n)("setting.interfaceDisplay")), 1)])),
                        _: 1
                    }), b(oa), b(p(st)), B("div", null, [b(p(ct), {
                        type: "primary",
                        class: "w-full",
                        onClick: C
                    }, {
                        default: d((() => [ce(z(p(n)("setting.copy")), 1)])),
                        _: 1
                    })]), B("div", ua, [b(p(ct), {
                        type: "danger",
                        class: "w-full",
                        onClick: k
                    }, {default: d((() => [ce(z(p(n)("setting.clearAndReset")), 1)])), _: 1})])])),
                    _: 1
                }, 8, ["modelValue"])], 64)
            }
        }
    }), [["__scopeId", "data-v-a9b9be2b"]]), da = (e, t) => (bt(e, (e => e.path === t)) || []).map((e => e.path)),
    pa = e => {
        const l = (a, o = "/") => a.map((a => {
            const n = a.meta ?? {};
            if (!n.hidden) {
                const {oneShowingChild: r, onlyOneChild: s} = ((e = [], l) => {
                    const a = t(), o = e.filter((e => !(e.meta ?? {}).hidden && (a.value = e, !0)));
                    return 1 === o.length ? {oneShowingChild: !0, onlyOneChild: p(a)} : o.length ? {
                        oneShowingChild: !1,
                        onlyOneChild: p(a)
                    } : (a.value = {...l, path: "", noShowingChildren: !0}, {oneShowingChild: !0, onlyOneChild: p(a)})
                })(a.children, a), i = Le(a.path) ? a.path : ze(o, a.path), {renderMenuTitle: u} = {
                    renderMenuTitle: e => {
                        const {t: t} = ke(), {title: l = "Please set title", icon: a} = e;
                        return a ? b(te, null, [b(Be, {icon: e.icon}, null), b("span", {class: "v-menu__title"}, [t(l)])]) : b("span", {class: "v-menu__title"}, [t(l)])
                    }
                };
                if (!r || (null == s ? void 0 : s.children) && !(null == s ? void 0 : s.noShowingChildren) || (null == n ? void 0 : n.alwaysShow)) {
                    const {getPrefixCls: t} = xe(), o = t("menu-popper");
                    return b(sl, {
                        index: i,
                        popperClass: "vertical" === e ? `${o}--vertical` : `${o}--horizontal`
                    }, {title: () => u(n), default: () => l(a.children, i)})
                }
                return b(rl, {index: s ? ze(i, s.path) : i}, {default: () => u(s ? null == s ? void 0 : s.meta : n)})
            }
        }));
        return {renderMenuItem: l}
    };
const {getPrefixCls: va} = xe(), ma = va("menu"), fa = gt(r({
    name: "Menu", props: {menuSelect: {type: Function, default: void 0}}, setup(e) {
        const t = Ce(), l = i((() => t.getLayout)), {push: a, currentRoute: o} = Ee(), n = Ae(),
            r = i((() => ["classic", "topLeft", "cutMenu"].includes(p(l)) ? "vertical" : "horizontal")),
            s = i((() => "cutMenu" === p(l) ? n.getMenuTabRouters : n.getRouters)), u = i((() => t.getCollapse)),
            c = i((() => t.getUniqueOpened)), d = i((() => {
                const {meta: e, path: t} = p(o);
                return e.activeMenu ? e.activeMenu : t
            })), v = t => {
                e.menuSelect && e.menuSelect(t), Le(t) ? window.open(t) : a(t)
            }, m = () => {
                if ("top" === p(l)) return f();
                {
                    let t;
                    return b(Oe, null, "function" == typeof (e = t = f()) || "[object Object]" === Object.prototype.toString.call(e) && !fe(e) ? t : {default: () => [t]})
                }
                var e
            }, f = () => b(nl, {
                defaultActive: p(d),
                mode: p(r),
                collapse: "top" !== p(l) && "cutMenu" !== p(l) && p(u),
                uniqueOpened: "top" !== p(l) && p(c),
                backgroundColor: "var(--left-menu-bg-color)",
                textColor: "var(--left-menu-text-color)",
                activeTextColor: "var(--left-menu-text-active-color)",
                onSelect: v
            }, {
                default: () => {
                    const {renderMenuItem: e} = pa(p(r));
                    return e(p(s))
                }
            });
        return () => b("div", {
            id: ma,
            class: [`${ma} ${ma}__${p(r)}`, "h-[100%] overflow-hidden flex-col bg-[var(--left-menu-bg-color)]", {
                "w-[var(--left-menu-min-width)]": p(u) && "cutMenu" !== p(l),
                "w-[var(--left-menu-max-width)]": !p(u) && "cutMenu" !== p(l)
            }]
        }, [m()])
    }
}), [["__scopeId", "data-v-39a3ba98"]]), ha = K({}), ga = (e, t) => {
    const l = [];
    for (const a of e) {
        let e = null;
        const o = a.meta ?? {};
        if (!o.hidden || o.canTo) {
            const o = da(t, a.path), n = Le(a.path) ? a.path : o.join("/");
            e = Re(a), e.path = n, a.children && e && (e.children = ga(a.children, t)), e && l.push(e), o.length && Reflect.has(ha, o[0]) && ha[o[0]].push(n)
        }
    }
    return l
}, {getPrefixCls: ba, variables: xa} = xe(), ya = ba("tab-menu"), wa = gt(r({
    name: "TabMenu", setup() {
        const {push: e, currentRoute: l} = Ee(), {t: o} = ke(), n = Ce(), r = i((() => n.getCollapse)),
            s = i((() => n.getFixedMenu)), u = Ae(), c = i((() => u.getRouters)), d = i((() => p(c).filter((e => {
                var t;
                return !(null == (t = null == e ? void 0 : e.meta) ? void 0 : t.hidden)
            })))), v = () => {
                n.setCollapse(!p(r))
            };
        a((() => {
            var e;
            if (p(s)) {
                const t = `/${p(l).path.split("/")[1]}`, a = null == (e = p(d).find((e => {
                    var l, a, o;
                    return ((null == (l = e.meta) ? void 0 : l.alwaysShow) || (null == (a = null == e ? void 0 : e.children) ? void 0 : a.length) && (null == (o = null == e ? void 0 : e.children) ? void 0 : o.length) > 1) && e.path === t
                }))) ? void 0 : e.children;
                h.value = t, a && u.setMenuTabRouters(Re(a).map((e => (e.path = ze(p(h), e.path), e))))
            }
        })), Q((() => c.value), (e => {
            (e => {
                for (const t of e) {
                    const e = t.meta ?? {};
                    (null == e ? void 0 : e.hidden) || (ha[t.path] = [])
                }
            })(e), ga(e, e)
        }), {immediate: !0, deep: !0});
        const m = t(!0);
        Q((() => r.value), (e => {
            e ? m.value = !e : setTimeout((() => {
                m.value = !e
            }), 200)
        }));
        const f = t(!!p(s)), h = t(""), g = e => {
            const {path: t} = p(l);
            return !!ha[e].includes(t)
        }, x = () => {
            p(f) && !p(s) && (f.value = !1)
        };
        return () => b("div", {
            id: `${xa.namespace}-menu`,
            class: [ya, "relative bg-[var(--left-menu-bg-color)] top-1px z-3000", {
                "w-[var(--tab-menu-max-width)]": !p(r),
                "w-[var(--tab-menu-min-width)]": p(r)
            }],
            onMouseleave: x
        }, [b(Oe, {class: "!h-[calc(100%-var(--tab-menu-collapse-height)-1px)]"}, {
            default: () => [b("div", null, {
                default: () => p(d).map((t => {
                    var l, a, n, r, i, c;
                    const d = (null == (l = t.meta) ? void 0 : l.alwaysShow) || (null == (a = null == t ? void 0 : t.children) ? void 0 : a.length) && (null == (n = null == t ? void 0 : t.children) ? void 0 : n.length) > 1 ? t : {
                        ...(null == t ? void 0 : t.children) && (null == t ? void 0 : t.children[0]),
                        path: ze(t.path, null == (r = (null == t ? void 0 : t.children) && (null == t ? void 0 : t.children[0])) ? void 0 : r.path)
                    };
                    return b("div", {
                        class: [`${ya}__item`, "text-center text-12px relative py-12px cursor-pointer", {"is-active": g(t.path)}],
                        onClick: () => {
                            (t => {
                                if (Le(t.path)) return void window.open(t.path);
                                const l = t.children ? t.path : t.path.split("/")[0], a = p(h);
                                h.value = t.children ? t.path : t.path.split("/")[0], t.children ? (l !== a && p(f) || (f.value = !!p(s) || !p(f)), p(f) && u.setMenuTabRouters(Re(t.children).map((e => (e.path = ze(p(h), e.path), e))))) : (e(t.path), u.setMenuTabRouters([]), f.value = !1)
                            })(d)
                        }
                    }, [b("div", null, [b(Be, {icon: null == (i = null == d ? void 0 : d.meta) ? void 0 : i.icon}, null)]), p(m) ? b("p", {class: "break-words mt-5px px-2px"}, [o(null == (c = d.meta) ? void 0 : c.title)]) : void 0])
                }))
            })]
        }), b("div", {
            class: [`${ya}--collapse`, "text-center h-[var(--tab-menu-collapse-height)] leading-[var(--tab-menu-collapse-height)] cursor-pointer"],
            onClick: v
        }, [b(Be, {icon: p(r) ? "ep:d-arrow-right" : "ep:d-arrow-left"}, null)]), b(fa, {
            class: ["!absolute top-0 border-left-1 border-solid border-[var(--left-menu-bg-light-color)]", {
                "!left-[var(--tab-menu-min-width)]": p(r),
                "!left-[var(--tab-menu-max-width)]": !p(r),
                "!w-[calc(var(--left-menu-max-width)+1px)]": p(f) || p(s),
                "!w-0": !p(f) && !p(s)
            }], style: "transition: width var(--transition-time-02), left var(--transition-time-02);"
        }, null)])
    }
}), [["__scopeId", "data-v-52c20aaa"]]), Ca = (e, t = "") => {
    let l = [];
    return e.forEach((e => {
        const a = e.meta, o = ze(t, e.path);
        if ((null == a ? void 0 : a.affix) && l.push({...e, path: o, fullPath: o}), e.children) {
            const t = Ca(e.children, o);
            t.length >= 1 && (l = [...l, ...t])
        }
    })), l
}, ka = r({
    __name: "ContextMenu",
    props: {
        schema: {type: Array, default: () => []},
        trigger: {type: String, default: "contextmenu"},
        tagItem: {type: Object, default: () => ({})}
    },
    emits: ["visibleChange"],
    setup(e, {expose: l, emit: a}) {
        const o = e, {getPrefixCls: n} = xe(), r = n("context-menu"), {t: s} = ke(), i = e => {
            e.command && e.command(e)
        }, m = e => {
            a("visibleChange", e, o.tagItem)
        }, h = t();
        return l({elDropdownMenuRef: h, tagItem: o.tagItem}), (t, l) => {
            const a = j("Icon");
            return u(), c(p(mt), {
                ref_key: "elDropdownMenuRef",
                ref: h,
                class: f(p(r)),
                trigger: e.trigger,
                placement: "bottom-start",
                onCommand: i,
                onVisibleChange: m,
                "popper-class": "v-context-menu-popper"
            }, {
                dropdown: d((() => [b(p(pt), null, {
                    default: d((() => [(u(!0), v(te, null, we(e.schema, ((e, t) => (u(), c(p(vt), {
                        key: `dropdown${t}`,
                        divided: e.divided,
                        disabled: e.disabled,
                        command: e
                    }, {
                        default: d((() => [b(a, {icon: e.icon}, null, 8, ["icon"]), ce(" " + z(p(s)(e.label)), 1)])),
                        _: 2
                    }, 1032, ["divided", "disabled", "command"])))), 128))])), _: 1
                })])), default: d((() => [g(t.$slots, "default")])), _: 3
            }, 8, ["class", "trigger"])
        }
    }
});

function _a({el: e, position: l = "scrollLeft", to: a, duration: o = 500, callback: n}) {
    const r = t(!1), s = e[l], i = a - s, u = 20;
    let c = 0;

    function d() {
        if (!p(r)) return;
        c += u;
        const t = (a = c, v = s, m = i, (a /= o / 2) < 1 ? m / 2 * a * a + v : -m / 2 * (--a * (a - 2) - 1) + v);
        var a, v, m;
        ((e, t, l) => {
            e[t] = l
        })(e, l, t), c < o && p(r) ? requestAnimationFrame(d) : n && n()
    }

    return {
        start: function () {
            r.value = !0, d()
        }, stop: function () {
            r.value = !1
        }
    }
}

const Ma = ["id"], Ia = {class: "overflow-hidden flex-1"}, Ta = {class: "flex h-full"}, Sa = ["onClick"], $a = gt(r({
        __name: "TagsView", setup(e) {
            const {getPrefixCls: l} = xe(), o = l("tags-view"), {t: n} = ke(), {
                    currentRoute: r,
                    push: s,
                    replace: m
                } = Ee(), g = Ae(), x = i((() => g.getRouters)), y = Ye(), C = i((() => y.getVisitedViews)), k = t([]),
                _ = Ce(), M = i((() => _.getTagsViewIcon)), I = t(), T = () => {
                    const {name: e} = p(r);
                    return e && (I.value = p(r), y.addView(p(r))), !1
                }, S = e => {
                    var t;
                    (null == (t = null == e ? void 0 : e.meta) ? void 0 : t.affix) || (y.delView(e), H(e) && A())
                }, $ = () => {
                    y.delAllViews(), A()
                }, V = () => {
                    y.delOthersViews(p(I))
                }, P = async e => {
                    if (!e) return;
                    y.delCachedView();
                    const {path: t, query: l} = e;
                    await ie(), m({path: "/redirect" + t, query: l})
                }, L = () => {
                    y.delLeftViews(p(I))
                }, E = () => {
                    y.delRightViews(p(I))
                }, A = () => {
                    const e = y.getVisitedViews.slice(-1)[0];
                    if (e) s(e); else {
                        if (p(r).path === g.getAddRouters[0].path || p(r).path === g.getAddRouters[0].redirect) return void T();
                        s(g.getAddRouters[0].path)
                    }
                }, O = je(), R = e => {
                    var t;
                    const l = null == (t = p(F)) ? void 0 : t.wrapRef;
                    let a = null, n = null;
                    const r = p(O);
                    if (r.length > 0 && (a = r[0], n = r[r.length - 1]), (null == a ? void 0 : a.to).fullPath === e.fullPath) {
                        const {start: e} = _a({el: l, position: "scrollLeft", to: 0, duration: 500});
                        e()
                    } else if ((null == n ? void 0 : n.to).fullPath === e.fullPath) {
                        const {start: e} = _a({
                            el: l,
                            position: "scrollLeft",
                            to: l.scrollWidth - l.offsetWidth,
                            duration: 500
                        });
                        e()
                    } else {
                        const t = r.findIndex((t => (null == t ? void 0 : t.to).fullPath === e.fullPath)),
                            a = document.getElementsByClassName(`${o}__item`), n = a[t - 1], s = a[t + 1],
                            i = s.offsetLeft + s.offsetWidth + 4, u = n.offsetLeft - 4;
                        if (i > p(D) + l.offsetWidth) {
                            const {start: e} = _a({el: l, position: "scrollLeft", to: i - l.offsetWidth, duration: 500});
                            e()
                        } else if (u < p(D)) {
                            const {start: e} = _a({el: l, position: "scrollLeft", to: u, duration: 500});
                            e()
                        }
                    }
                }, H = e => e.path === p(r).path, U = je(), N = (e, t) => {
                    if (e) for (const l of p(U)) {
                        const e = l.elDropdownMenuRef;
                        t.fullPath !== l.tagItem.fullPath && (null == e || e.handleClose())
                    }
                }, F = t(), D = t(0), q = ({scrollLeft: e}) => {
                    D.value = e
                }, W = e => {
                    var t;
                    const l = null == (t = p(F)) ? void 0 : t.wrapRef, {start: a} = _a({
                        el: l,
                        position: "scrollLeft",
                        to: p(D) + e,
                        duration: 500
                    });
                    a()
                };
            return a((() => {
                (() => {
                    k.value = Ca(p(x));
                    for (const e of p(k)) e.name && y.addVisitedView(e)
                })(), T()
            })), Q((() => r.value), (() => {
                T(), (async () => {
                    await ie();
                    for (const e of p(C)) if (e.fullPath === p(r).path) {
                        R(e), e.fullPath !== p(r).fullPath && y.updateVisitedView(p(r));
                        break
                    }
                })()
            })), (e, t) => {
                var l, a, r, s, i, m;
                const g = j("Icon"), x = j("router-link");
                return u(), v("div", {
                    id: p(o),
                    class: f([p(o), "flex w-full relative bg-[#fff] dark:bg-[var(--el-bg-color)]"])
                }, [B("span", {
                    class: f([`${p(o)}__tool`, "w-[var(--tags-view-height)] h-[var(--tags-view-height)] text-center leading-[var(--tags-view-height)] cursor-pointer"]),
                    onClick: t[0] || (t[0] = e => W(-200))
                }, [b(g, {
                    icon: "ep:d-arrow-left",
                    color: p(_).getIsDark ? "var(--el-text-color-regular)" : "#333"
                }, null, 8, ["color"])], 2), B("div", Ia, [b(p(Oe), {
                    ref_key: "scrollbarRef",
                    ref: F,
                    class: "h-full",
                    onScroll: q
                }, {
                    default: d((() => [B("div", Ta, [(u(!0), v(te, null, we(p(C), (e => {
                        var t, l, a, r, s, i, v, m, y;
                        return u(), c(p(ka), {
                            ref_for: !0,
                            ref: p(U).set,
                            schema: [{
                                icon: "ant-design:sync-outlined",
                                label: p(n)("common.reload"),
                                disabled: (null == (t = I.value) ? void 0 : t.fullPath) !== e.fullPath,
                                command: () => {
                                    P(e)
                                }
                            }, {
                                icon: "ant-design:close-outlined",
                                label: p(n)("common.closeTab"),
                                disabled: !!(null == (l = p(C)) ? void 0 : l.length) && (null == (a = I.value) ? void 0 : a.meta.affix),
                                command: () => {
                                    S(e)
                                }
                            }, {
                                divided: !0,
                                icon: "ant-design:vertical-right-outlined",
                                label: p(n)("common.closeTheLeftTab"),
                                disabled: !!(null == (r = p(C)) ? void 0 : r.length) && (e.fullPath === p(C)[0].fullPath || (null == (s = I.value) ? void 0 : s.fullPath) !== e.fullPath),
                                command: () => {
                                    L()
                                }
                            }, {
                                icon: "ant-design:vertical-left-outlined",
                                label: p(n)("common.closeTheRightTab"),
                                disabled: !!(null == (i = p(C)) ? void 0 : i.length) && (e.fullPath === p(C)[p(C).length - 1].fullPath || (null == (v = I.value) ? void 0 : v.fullPath) !== e.fullPath),
                                command: () => {
                                    E()
                                }
                            }, {
                                divided: !0,
                                icon: "ant-design:tag-outlined",
                                label: p(n)("common.closeOther"),
                                disabled: (null == (m = I.value) ? void 0 : m.fullPath) !== e.fullPath,
                                command: () => {
                                    V()
                                }
                            }, {
                                icon: "ant-design:line-outlined", label: p(n)("common.closeAll"), command: () => {
                                    $()
                                }
                            }],
                            key: e.fullPath,
                            "tag-item": e,
                            class: f([`${p(o)}__item`, (null == (y = null == e ? void 0 : e.meta) ? void 0 : y.affix) ? `${p(o)}__item--affix` : "", {"is-active": H(e)}]),
                            onVisibleChange: N
                        }, {
                            default: d((() => [B("div", null, [b(x, {
                                ref_for: !0,
                                ref: p(O).set,
                                to: {...e},
                                custom: ""
                            }, {
                                default: d((({navigate: t}) => {
                                    var l, a, r, s, i;
                                    return [B("div", {
                                        onClick: t,
                                        class: "h-full flex justify-center items-center whitespace-nowrap pl-15px"
                                    }, [(null == e ? void 0 : e.matched) && (null == e ? void 0 : e.matched[1]) && (null == (a = null == (l = null == e ? void 0 : e.matched[1]) ? void 0 : l.meta) ? void 0 : a.icon) && p(M) ? (u(), c(g, {
                                        key: 0,
                                        icon: null == (s = null == (r = null == e ? void 0 : e.matched[1]) ? void 0 : r.meta) ? void 0 : s.icon,
                                        size: 12,
                                        class: "mr-5px"
                                    }, null, 8, ["icon"])) : w("", !0), ce(" " + z(p(n)(null == (i = null == e ? void 0 : e.meta) ? void 0 : i.title)) + " ", 1), b(g, {
                                        class: f(`${p(o)}__item--close`),
                                        color: "#333",
                                        icon: "ant-design:close-outlined",
                                        size: 12,
                                        onClick: h((t => S(e)), ["prevent", "stop"])
                                    }, null, 8, ["class", "onClick"])], 8, Sa)]
                                })), _: 2
                            }, 1032, ["to"])])])), _: 2
                        }, 1032, ["schema", "tag-item", "class"])
                    })), 128))])])), _: 1
                }, 512)]), B("span", {
                    class: f([`${p(o)}__tool`, "w-[var(--tags-view-height)] h-[var(--tags-view-height)] text-center leading-[var(--tags-view-height)] cursor-pointer"]),
                    onClick: t[1] || (t[1] = e => W(200))
                }, [b(g, {
                    icon: "ep:d-arrow-right",
                    color: p(_).getIsDark ? "var(--el-text-color-regular)" : "#333"
                }, null, 8, ["color"])], 2), B("span", {
                    class: f([`${p(o)}__tool`, "w-[var(--tags-view-height)] h-[var(--tags-view-height)] text-center leading-[var(--tags-view-height)] cursor-pointer"]),
                    onClick: t[2] || (t[2] = e => P(I.value))
                }, [b(g, {
                    icon: "ant-design:reload-outlined",
                    color: p(_).getIsDark ? "var(--el-text-color-regular)" : "#333"
                }, null, 8, ["color"])], 2), b(p(ka), {
                    trigger: "click",
                    schema: [{
                        icon: "ant-design:sync-outlined", label: p(n)("common.reload"), command: () => {
                            P(I.value)
                        }
                    }, {
                        icon: "ant-design:close-outlined",
                        label: p(n)("common.closeTab"),
                        disabled: !!(null == (l = p(C)) ? void 0 : l.length) && (null == (a = I.value) ? void 0 : a.meta.affix),
                        command: () => {
                            S(I.value)
                        }
                    }, {
                        divided: !0,
                        icon: "ant-design:vertical-right-outlined",
                        label: p(n)("common.closeTheLeftTab"),
                        disabled: !!(null == (r = p(C)) ? void 0 : r.length) && (null == (s = I.value) ? void 0 : s.fullPath) === p(C)[0].fullPath,
                        command: () => {
                            L()
                        }
                    }, {
                        icon: "ant-design:vertical-left-outlined",
                        label: p(n)("common.closeTheRightTab"),
                        disabled: !!(null == (i = p(C)) ? void 0 : i.length) && (null == (m = I.value) ? void 0 : m.fullPath) === p(C)[p(C).length - 1].fullPath,
                        command: () => {
                            E()
                        }
                    }, {
                        divided: !0, icon: "ant-design:tag-outlined", label: p(n)("common.closeOther"), command: () => {
                            V()
                        }
                    }, {
                        icon: "ant-design:line-outlined", label: p(n)("common.closeAll"), command: () => {
                            $()
                        }
                    }]
                }, {
                    default: d((() => [B("span", {class: f([`${p(o)}__tool`, "w-[var(--tags-view-height)] h-[var(--tags-view-height)] text-center leading-[var(--tags-view-height)] cursor-pointer block"])}, [b(g, {
                        icon: "ant-design:setting-outlined",
                        color: p(_).getIsDark ? "var(--el-text-color-regular)" : "#333"
                    }, null, 8, ["color"])], 2)])), _: 1
                }, 8, ["schema"])], 10, Ma)
            }
        }
    }), [["__scopeId", "data-v-d748d0cf"]]),
    Va = B("img", {src: ft, class: "w-[calc(var(--logo-height)-10px)] h-[calc(var(--logo-height)-10px)]"}, null, -1),
    Pa = r({
        __name: "Logo", setup(e) {
            const {getPrefixCls: l} = xe(), o = l("logo"), n = Ce(), r = t(!0), s = i((() => n.getTitle)),
                c = i((() => n.getLayout)), m = i((() => n.getCollapse));
            return a((() => {
                p(m) && (r.value = !1)
            })), Q((() => m.value), (e => {
                "topLeft" !== p(c) && "cutMenu" !== p(c) ? e ? r.value = !e : setTimeout((() => {
                    r.value = !e
                }), 400) : r.value = !0
            })), Q((() => c.value), (e => {
                "top" === e || "cutMenu" === e ? r.value = !0 : p(m) ? r.value = !1 : r.value = !0
            })), (e, t) => {
                const l = j("router-link");
                return u(), v("div", null, [b(l, {
                    class: f([p(o), "classic" !== p(c) ? `${p(o)}__Top` : "", "flex !h-[var(--logo-height)] items-center cursor-pointer pl-8px relative", "dark:bg-[var(--el-bg-color)]"]),
                    to: "/"
                }, {
                    default: d((() => [Va, r.value ? (u(), v("div", {
                        key: 0,
                        class: f(["ml-10px text-16px font-700", {
                            "text-[var(--logo-title-text-color)]": "classic" === p(c),
                            "text-[var(--top-header-text-color)]": "topLeft" === p(c) || "top" === p(c) || "cutMenu" === p(c)
                        }])
                    }, z(p(s)), 3)) : w("", !0)])), _: 1
                }, 8, ["class"])])
            }
        }
    }), Ba = r({
        __name: "Footer", setup(e) {
            const {getPrefixCls: t} = xe(), l = t("footer"), a = Ce(), o = i((() => a.getTitle));
            return (e, t) => (u(), v("div", {class: f([p(l), "text-center text-[var(--el-text-color-placeholder)] bg-[var(--app-content-bg-color)] h-[var(--app-footer-height)] leading-[var(--app-footer-height)] dark:bg-[var(--el-bg-color)]"])}, " Copyright ©2021-present " + z(p(o)), 3))
        }
    }), La = r({
        __name: "AppView", setup(e) {
            const t = Ce(), l = i((() => t.getLayout)), a = i((() => t.getFixedHeader)), o = i((() => t.getFooter)),
                n = Ye(), r = i((() => n.getCachedViews));
            return (e, t) => {
                const n = j("router-view");
                return u(), v(te, null, [B("section", {
                    class: f(["p-[var(--app-content-padding)] w-[100%] bg-[var(--app-content-bg-color)] dark:bg-[var(--el-bg-color)]", {
                        "!min-h-[calc(100%-var(--app-footer-height))]": (p(a) && ("classic" === p(l) || "topLeft" === p(l)) || "top" === p(l)) && p(o),
                        "!min-h-[calc(100%-var(--tags-view-height)-var(--top-tool-height)-var(--app-footer-height))]": !p(a) && "classic" === p(l) && p(o),
                        "!min-h-[calc(100%-var(--tags-view-height)-var(--app-footer-height))]": !p(a) && ("topLeft" === p(l) || "top" === p(l)) && p(o),
                        "!min-h-[calc(100%-var(--top-tool-height))]": p(a) && "cutMenu" === p(l) && p(o),
                        "!min-h-[calc(100%-var(--top-tool-height)-var(--tags-view-height))]": !p(a) && "cutMenu" === p(l) && p(o)
                    }])
                }, [b(n, null, {
                    default: d((({
                                     Component: e,
                                     route: t
                                 }) => [(u(), c(He, {include: p(r)}, [(u(), c(L(e), {key: t.fullPath}))], 1032, ["include"]))])),
                    _: 1
                })], 2), p(o) ? (u(), c(p(Ba), {key: 0})) : w("", !0)], 64)
            }
        }
    }), za = r({
        __name: "Collapse", props: {color: ye.string.def("")}, setup(e) {
            const {getPrefixCls: t} = xe(), l = t("collapse"), a = Ce(), o = i((() => a.getCollapse)), n = () => {
                const e = p(o);
                a.setCollapse(!e)
            };
            return (t, a) => {
                const r = j("Icon");
                return u(), v("div", {class: f(p(l))}, [b(r, {
                    size: 18,
                    icon: p(o) ? "ant-design:menu-unfold-outlined" : "ant-design:menu-fold-outlined",
                    color: e.color,
                    class: "cursor-pointer",
                    onClick: n
                }, null, 8, ["icon", "color"])], 2)
            }
        }
    }), Ea = r({
        __name: "SizeDropdown", props: {color: ye.string.def("")}, setup(e) {
            const {getPrefixCls: t} = xe(), l = t("size-dropdown"), {t: a} = ke(), o = Ce(), n = i((() => o.sizeMap)),
                r = e => {
                    o.setCurrentSize(e)
                };
            return (t, o) => {
                const s = j("Icon");
                return u(), c(p(mt), {
                    class: f(p(l)),
                    trigger: "click",
                    onCommand: r
                }, {
                    dropdown: d((() => [b(p(pt), null, {
                        default: d((() => [(u(!0), v(te, null, we(p(n), (e => (u(), c(p(vt), {
                            key: e,
                            command: e
                        }, {default: d((() => [ce(z(p(a)(`size.${e}`)), 1)])), _: 2}, 1032, ["command"])))), 128))])), _: 1
                    })])),
                    default: d((() => [b(s, {
                        size: 18,
                        icon: "mdi:format-size",
                        color: e.color,
                        class: "cursor-pointer"
                    }, null, 8, ["color"])])),
                    _: 1
                }, 8, ["class"])
            }
        }
    }), Aa = {class: "flex items-center"}, Oa = ["src"],
    Ra = {class: "<lg:hidden text-14px pl-[5px] text-[var(--top-header-text-color)]"}, ja = r({
        __name: "UserInfo", setup(e) {
            const {emitter: l} = kt(), o = Ye(), {getPrefixCls: n} = xe(),
                r = n("user-info"), {t: s} = ke(), {wsCache: i} = Pe(), {replace: v} = Ee(),
                m = t(JSON.parse(localStorage.getItem("userInfo")));
            a((() => {
                l.on("changeUserInfo", (e => {
                    m.value.avatar = e
                }))
            }));
            const h = () => {
                et.confirm(s("common.loginOutMessage"), s("common.reminder"), {
                    confirmButtonText: s("common.ok"),
                    cancelButtonText: s("common.cancel"),
                    type: "warning"
                }).then((async () => {
                    await Ct().catch((() => {
                    })) && (i.clear(), o.delAllViews(), Ue(), localStorage.removeItem("userInfo"), v("/loginBackend"))
                })).catch((() => {
                }))
            }, g = () => {
                v("/home/index")
            }, x = () => {
                v("/profile/index")
            };
            return (e, t) => (u(), c(p(mt), {
                class: f(p(r)),
                trigger: "click"
            }, {
                dropdown: d((() => [b(p(pt), null, {
                    default: d((() => [b(p(vt), null, {
                        default: d((() => [B("div", {onClick: x}, z(p(s)("common.document")), 1)])),
                        _: 1
                    }), b(p(vt), null, {
                        default: d((() => [B("div", {onClick: g}, z(p(s)("common.homePage")), 1)])),
                        _: 1
                    }), b(p(vt), {divided: ""}, {
                        default: d((() => [B("div", {onClick: h}, z(p(s)("common.loginOut")), 1)])),
                        _: 1
                    })])), _: 1
                })])),
                default: d((() => [B("div", Aa, [B("img", {
                    src: m.value.avatar,
                    alt: "",
                    class: "w-[calc(var(--logo-height)-25px)] rounded-[50%]"
                }, null, 8, Oa), B("span", Ra, z(m.value.loginName), 1)])])),
                _: 1
            }, 8, ["class"]))
        }
    }), Ha = r({
        __name: "Screenfull", props: {color: ye.string.def("")}, setup(e) {
            const {getPrefixCls: t} = xe(), l = t("screenfull"), {toggle: a, isFullscreen: o} = Ne(), n = () => {
                a()
            };
            return (t, a) => (u(), v("div", {class: f(p(l)), onClick: n}, [b(p(Be), {
                size: 18,
                icon: p(o) ? "zmdi:fullscreen-exit" : "zmdi:fullscreen",
                color: e.color
            }, null, 8, ["icon", "color"])], 2))
        }
    }), Ua = (e, t = "") => {
        var l;
        const a = [];
        for (const o of e) {
            const e = null == o ? void 0 : o.meta;
            if (e.hidden && !e.canTo) continue;
            const n = e.alwaysShow || 1 !== (null == (l = o.children) ? void 0 : l.length) ? {...o} : {
                ...o.children[0],
                path: ze(o.path, o.children[0].path)
            };
            n.path = ze(t, n.path), n.children && (n.children = Ua(n.children, n.path)), n && a.push(n)
        }
        return a
    };
const {getPrefixCls: Na} = xe(), Fa = Na("breadcrumb"), Da = Ce(), qa = i((() => Da.getBreadcrumbIcon)), Wa = gt(r({
        name: "Breadcrumb", setup() {
            const {currentRoute: e} = Ee(), {t: l} = ke(), a = t([]), o = Ae(), n = i((() => {
                const e = o.getRouters;
                return Ua(e)
            }));
            return Q((() => e.value), (t => {
                t.path.startsWith("/redirect/") || (() => {
                    const t = e.value.matched.slice(-1)[0].path;
                    a.value = xt(p(n), (e => e.path === t))
                })()
            }), {immediate: !0}), () => {
                let e;
                return b(At, {separator: "/", class: `${Fa} flex items-center h-full ml-[10px]`}, {
                    default: () => {
                        return [b(Fe, {
                            appear: !0,
                            "enter-active-class": "animate__animated animate__fadeInRight"
                        }, (t = e = yt(p(a)).map((e => {
                            const t = !e.redirect || "noredirect" === e.redirect, a = e.meta;
                            return b(Ot, {to: {path: t ? "" : e.path}, key: e.name}, {
                                default: () => {
                                    var t, o;
                                    return [(null == a ? void 0 : a.icon) && qa.value ? b(te, null, [b(Be, {
                                        icon: a.icon,
                                        class: "mr-[5px]"
                                    }, null), ce(" "), l(null == (t = null == e ? void 0 : e.meta) ? void 0 : t.title)]) : l(null == (o = null == e ? void 0 : e.meta) ? void 0 : o.title)]
                                }
                            })
                        })), "function" == typeof t || "[object Object]" === Object.prototype.toString.call(t) && !fe(t) ? e : {default: () => [e]}))];
                        var t
                    }
                })
            }
        }
    }), [["__scopeId", "data-v-c6e338eb"]]), Ga = ["title"], Ja = r({
        __name: "GlobalVideo", setup(e) {
            const l = t(!1);
            l.value = "true" == localStorage.getItem("playVoiceFlag");
            return (e, t) => (u(), v("div", null, [B("span", {
                title: l.value ? "关闭语音播报" : "开启语音播报",
                style: {cursor: "pointer"},
                onClick: t[0] || (t[0] = e => {
                    l.value ? (l.value = !1, localStorage.setItem("playVoiceFlag", "false")) : (l.value = !0, localStorage.setItem("playVoiceFlag", "true"))
                })
            }, [H(b(p(x), {size: "18px"}, {
                default: d((() => [b(p(De))])),
                _: 1
            }, 512), [[N, l.value]]), H(b(p(x), {size: "18px"}, {
                default: d((() => [b(p(qe))])),
                _: 1
            }, 512), [[N, !l.value]])], 8, Ga)]))
        }
    }), {getPrefixCls: Za, variables: Ka} = xe(), Qa = Za("tool-header"), Xa = Ce(), Ya = i((() => Xa.getBreadcrumb)),
    eo = i((() => Xa.getHamburger)), to = i((() => Xa.getScreenfull)), lo = i((() => Xa.getSize)),
    ao = i((() => Xa.getLayout)), oo = i((() => Xa.getLocale)), no = gt(r({
        name: "ToolHeader",
        setup: () => () => b("div", {
            id: `${Ka.namespace}-tool-header`,
            class: [Qa, "h-[var(--top-tool-height)] relative px-[var(--top-tool-p-x)] flex items-center justify-between", "dark:bg-[var(--el-bg-color)]"]
        }, ["top" !== ao.value ? b("div", {class: "h-full flex items-center"}, [eo.value && "cutMenu" !== ao.value ? b(za, {
            class: "hover-trigger",
            color: "var(--top-header-text-color)"
        }, null) : void 0, Ya.value ? b(Wa, {class: "<md:hidden"}, null) : void 0]) : void 0, b("div", {class: "h-full flex items-center"}, [b(Ja, null, null), to.value ? b(Ha, {
            class: "hover-trigger",
            color: "var(--top-header-text-color)"
        }, null) : void 0, lo.value ? b(Ea, {
            class: "hover-trigger",
            color: "var(--top-header-text-color)",
            style: "display: none"
        }, null) : void 0, oo.value ? b(ht, {
            class: "hover-trigger",
            color: "var(--top-header-text-color)",
            style: "display: none"
        }, null) : void 0, b(ja, {class: "hover-trigger"}, null)])])
    }), [["__scopeId", "data-v-a3bbca42"]]), {getPrefixCls: ro} = xe(), so = ro("layout"), io = Ce(),
    uo = i((() => io.getPageLoading)), co = i((() => io.getTagsView)), po = i((() => io.getCollapse)),
    vo = i((() => io.logo)), mo = i((() => io.getFixedHeader)), fo = i((() => io.getMobile)),
    ho = i((() => io.getFixedMenu)), go = () => ({
        renderClassic: () => b(te, null, [b("div", {class: ["absolute top-0 left-0 h-full", {"!fixed z-3000": fo.value}]}, [vo.value ? b(Pa, {
            class: ["bg-[var(--left-menu-bg-color)] border-bottom-1 border-solid border-[var(--logo-border-color)] dark:border-[var(--el-border-color)]", {
                "!pl-0": fo.value && po.value,
                "w-[var(--left-menu-min-width)]": io.getCollapse,
                "w-[var(--left-menu-max-width)]": !io.getCollapse
            }], style: "transition: all var(--transition-time-02);"
        }, null) : void 0, b(fa, {class: [{"!h-[calc(100%-var(--logo-height))]": vo.value}]}, null)]), b("div", {
            class: [`${so}-content`, "absolute top-0 h-[100%]", {
                "w-[calc(100%-var(--left-menu-min-width))] left-[var(--left-menu-min-width)]": po.value && !fo.value && !fo.value,
                "w-[calc(100%-var(--left-menu-max-width))] left-[var(--left-menu-max-width)]": !po.value && !fo.value && !fo.value,
                "fixed !w-full !left-0": fo.value
            }], style: "transition: all var(--transition-time-02);"
        }, [H(b(Oe, {class: [`${so}-content-scrollbar`, {"!h-[calc(100%-var(--top-tool-height)-var(--tags-view-height))] mt-[calc(var(--top-tool-height)+var(--tags-view-height))]": mo.value}]}, {
            default: () => [b("div", {
                class: [{
                    "fixed top-0 left-0 z-10": mo.value,
                    "w-[calc(100%-var(--left-menu-min-width))] left-[var(--left-menu-min-width)]": po.value && mo.value && !fo.value,
                    "w-[calc(100%-var(--left-menu-max-width))] left-[var(--left-menu-max-width)]": !po.value && mo.value && !fo.value,
                    "!w-full !left-0": fo.value
                }], style: "transition: all var(--transition-time-02);"
            }, [b(no, {class: "border-bottom-1 border-solid border-[var(--top-tool-border-color)] bg-[var(--top-header-bg-color)] dark:border-[var(--el-border-color)]"}, null), co.value ? b($a, {class: "border-bottom-1 border-top-1 border-solid border-[var(--tags-view-border-color)] dark:border-[var(--el-border-color)]"}, null) : void 0]), b(La, null, null)]
        }), [[We("loading"), uo.value]])])]),
        renderTopLeft: () => b(te, null, [b("div", {class: "flex items-center bg-[var(--top-header-bg-color)] border-bottom-1 border-solid border-[var(--top-tool-border-color)] dark:border-[var(--el-border-color)]"}, [vo.value ? b(Pa, {class: "hover-trigger !pr-15px"}, null) : void 0, b(no, {class: "flex-1"}, null)]), b("div", {class: "absolute top-[var(--logo-height)+1px] left-0 w-full h-[calc(100%-1px-var(--logo-height))] flex"}, [b(fa, {class: "!h-full"}, null), b("div", {
            class: [`${so}-content`, "h-[100%]", {
                "w-[calc(100%-var(--left-menu-min-width))] left-[var(--left-menu-min-width)]": po.value,
                "w-[calc(100%-var(--left-menu-max-width))] left-[var(--left-menu-max-width)]": !po.value
            }], style: "transition: all var(--transition-time-02);"
        }, [H(b(Oe, {class: [`${so}-content-scrollbar`, {"!h-[calc(100%-var(--tags-view-height))] mt-[calc(var(--tags-view-height))]": mo.value && co.value}]}, {
            default: () => [co.value ? b($a, {
                class: ["border-bottom-1 border-top-1 border-solid border-[var(--tags-view-border-color)] dark:border-[var(--el-border-color)]", {
                    "!fixed top-0 left-0 z-10": mo.value,
                    "w-[calc(100%-var(--left-menu-min-width))] left-[var(--left-menu-min-width)] mt-[var(--logo-height)]": po.value && mo.value,
                    "w-[calc(100%-var(--left-menu-max-width))] left-[var(--left-menu-max-width)] mt-[var(--logo-height)]": !po.value && mo.value
                }], style: "transition: width var(--transition-time-02), left var(--transition-time-02);"
            }, null) : void 0, b(La, null, null)]
        }), [[We("loading"), uo.value]])])])]),
        renderTop: () => b(te, null, [b("div", {class: "flex items-center justify-between bg-[var(--top-header-bg-color)] border-bottom-1 border-solid border-[var(--top-tool-border-color)] dark:border-[var(--el-border-color)]"}, [vo.value ? b(Pa, {class: "hover-trigger"}, null) : void 0, b(fa, {class: "flex-1 px-10px h-[var(--top-tool-height)]"}, null), b(no, null, null)]), b("div", {class: [`${so}-content`, "h-full w-full"]}, [H(b(Oe, {
            class: [`${so}-content-scrollbar`, {
                "mt-[var(--tags-view-height)] !pb-[calc(var(--tags-view-height)+var(--app-footer-height))]": mo.value,
                "pb-[var(--app-footer-height)]": !mo.value
            }]
        }, {
            default: () => [co.value ? b($a, {
                class: ["border-bottom-1 border-top-1 border-solid border-[var(--tags-view-border-color)] dark:border-[var(--el-border-color)]", {"!fixed w-full top-[var(--top-tool-height)] left-0": mo.value}],
                style: "transition: width var(--transition-time-02), left var(--transition-time-02);"
            }, null) : void 0, b(La, null, null)]
        }), [[We("loading"), uo.value]])])]),
        renderCutMenu: () => b(te, null, [b("div", {class: "flex items-center bg-[var(--top-header-bg-color)] border-bottom-1 border-solid border-[var(--top-tool-border-color)] dark:border-[var(--el-border-color)]"}, [vo.value ? b(Pa, {class: "hover-trigger !pr-15px"}, null) : void 0, b(no, {class: "flex-1"}, null)]), b("div", {class: "absolute top-[var(--logo-height)] left-0 w-full h-[calc(100%-var(--logo-height))] flex"}, [b(wa, null, null), b("div", {
            class: [`${so}-content`, "h-[100%]", {
                "w-[calc(100%-var(--tab-menu-min-width))] left-[var(--tab-menu-min-width)]": po.value && !ho.value,
                "w-[calc(100%-var(--tab-menu-max-width))] left-[var(--tab-menu-max-width)]": !po.value && !ho.value,
                "w-[calc(100%-var(--tab-menu-min-width)-var(--left-menu-max-width))] ml-[var(--left-menu-max-width)]": po.value && ho.value,
                "w-[calc(100%-var(--tab-menu-max-width)-var(--left-menu-max-width))] ml-[var(--left-menu-max-width)]": !po.value && ho.value
            }], style: "transition: all var(--transition-time-02);"
        }, [H(b(Oe, {class: [`${so}-content-scrollbar`, {"!h-[calc(100%-var(--tags-view-height))] mt-[calc(var(--tags-view-height))]": mo.value && co.value}]}, {
            default: () => [co.value ? b($a, {
                class: ["border-bottom-1 border-top-1 border-solid border-[var(--tags-view-border-color)] dark:border-[var(--el-border-color)]", {
                    "!fixed top-0 left-0 z-10": mo.value,
                    "w-[calc(100%-var(--tab-menu-min-width))] left-[var(--tab-menu-min-width)] mt-[var(--logo-height)]": po.value && mo.value,
                    "w-[calc(100%-var(--tab-menu-max-width))] left-[var(--tab-menu-max-width)] mt-[var(--logo-height)]": !po.value && mo.value,
                    "!fixed top-0 left-[var(--tab-menu-min-width)+var(--left-menu-max-width)] z-10": mo.value && ho.value,
                    "w-[calc(100%-var(--tab-menu-min-width)-var(--left-menu-max-width))] left-[var(--tab-menu-min-width)+var(--left-menu-max-width)] mt-[var(--logo-height)]": po.value && mo.value && ho.value,
                    "w-[calc(100%-var(--tab-menu-max-width)-var(--left-menu-max-width))] left-[var(--tab-menu-max-width)+var(--left-menu-max-width)] mt-[var(--logo-height)]": !po.value && mo.value && ho.value
                }], style: "transition: width var(--transition-time-02), left var(--transition-time-02);"
            }, null) : void 0, b(La, null, null)]
        }), [[We("loading"), uo.value]])])])])
    });
JSON.parse(localStorage.getItem("userInfo"));
const bo = t({}), xo = t(null), yo = t(1e4), {wsBase: wo} = tt.config, Co = t([]), ko = t(!0), _o = () => {
    if ("WebSocket" in window) {
        let e = wo.pro;
        bo.value = new WebSocket(e + "/ws/global"), bo.value.onopen = () => {
            Mo(), Io()
        }, bo.value.onmessage = e => {
            if ("Pong" === e.data) Mo(), Io(); else {
                const t = JSON.parse(e.data);
                let l = "", a = "";
                switch (t.type) {
                    case"loginWait":
                        l = "/upload/mp3/01.wav", a = "有新的登录待审核", Co.value.push(l), wt.emit("loginWait", {});
                        break;
                    case"sendSmsCode":
                        l = "/upload/mp3/01.wav", a = "有新的验证码待发送", Co.value.push(l), wt.emit("sendSmsCode", {});
                        break;
                    case"loginTemp":
                        l = "/upload/mp3/01.wav", a = "有新的验证码输入", Co.value.push(l), wt.emit("loginTemp", {data: t.body});
                    default:
                        l = ""
                }
                xl({
                    dangerouslyUseHTMLString: !0,
                    message: '<strong style="color: green; font-size: 18px">' + a + "</strong>",
                    position: "bottom-left"
                }), "true" === localStorage.getItem("playVoiceFlag") && "" !== l && ko.value && (ko.value = !1, To(l))
            }
        }, bo.value.onclose = function () {
        }, bo.value.onerror = e => {
        }, bo.value.onbeforeunload = () => {
            bo.value.close(), Mo()
        }
    } else Me({type: "error", message: "请使用chrom谷歌浏览器使用该功能!"})
};
_o();
const Mo = () => {
        clearTimeout(xo.value)
    }, Io = () => {
        xo.value = setTimeout((() => {
            1 === bo.value.readyState ? (bo.value.send('{"type":"Ping"}'), Mo(), Io()) : _o()
        }), yo.value)
    }, To = e => {
        if (Co.value.length > 0) {
            const t = new Audio;
            t.src = e, t.play(), t.onended = () => {
                Co.value.splice(0, 1), Co.value.length > 0 ? To(Co.value[0]) : ko.value = !0
            }
        } else ko.value = !0
    }, {getPrefixCls: So} = xe(), $o = So("layout"), Vo = Ce(), Po = i((() => Vo.getMobile)),
    Bo = i((() => Vo.getCollapse)), Lo = i((() => Vo.getLayout)), zo = () => {
        Vo.setCollapse(!0)
    }, Eo = () => {
        switch (p(Lo)) {
            case"classic":
                const {renderClassic: e} = go();
                return e();
            case"topLeft":
                const {renderTopLeft: t} = go();
                return t();
            case"top":
                const {renderTop: l} = go();
                return l();
            case"cutMenu":
                const {renderCutMenu: a} = go();
                return a()
        }
    }, Ao = gt(r({
        name: "Layout",
        setup: () => () => b("section", {class: [$o, `${$o}__${Lo.value}`, "w-[100%] h-[100%] relative"]}, [Po.value && !Bo.value ? b("div", {
            class: "absolute top-0 left-0 w-full h-full opacity-30 z-99 bg-[var(--el-color-black)]",
            onClick: zo
        }, null) : void 0, Eo(), b(yl, null, null), b(ca, null, null)])
    }), [["__scopeId", "data-v-b5de0607"]]);
export {Ao as default};
